doSecondaryAuth

接口描述

如果身份认证服务器有启用二次认证时会进入当前流程,会执行onAuthProgress(SFAuthType nextAuthType, SFBaseMessage message)回调,请参考认证回调,根据回调参数,调用本接口完成二次认证。

注意事项

  1. 此接口调用之前必须已经调用过SFAuthResultListener并设置了非空的认证回调
  2. 主从场景下,子应用不能调用此方法

方法定义

    public void doSecondaryAuth(SFAuthType authType, Map<String, String> authInfo)

参数说明

表1: 参数说明

参数 是否必须 类型 描述
authType SFAuthType 认证类型
authInfo Map 辅助认证数据对象

表2: 枚举SFAuthType说明

枚举值 描述
AUTH_TYPE_SMS 短信认证
AUTH_TYPE_RADIUS 挑战认证或者Radius认证
AUTH_TYPE_TOKEN 令牌认证
AUTH_TYPE_RENEW_PASSWORD 更新密码认证
AUTH_TYPE_RAND 图形校验码认证

表3 对应的authInfo举例

authInfo的key在SFConstants中,需要在SFConstants中获取。

认证类型 KEY和Value
短信认证 authInfo.put(SFConstants.AUTH_KEY_SMS, "验证码");
挑战认证或者Radius认证 authInfo.put(SFConstants.AUTH_KEY_RADIUS_CODE, "code");
令牌认证 authInfo.put(SFConstants.AUTH_KEY_TOKEN, "sdfasftoken");
更新密码认证 authInfo.put(SFConstants.AUTH_KEY_RENEW_OLD_PASSWORD, "旧密码"); authInfo.put(SFConstants.AUTH_KEY_REWNEW_NEW_PASSWORD, "新密码");
图形校验码认证 authInfo.put(SFConstants.AUTH_KEY_USERNAME, "用户名"); authInfo.put(SFConstants.AUTH_KEY_PASSWORD, "密码"); authInfo.put(SFConstants.AUTH_KEY_RANDCODE, "图形验证码");

示例代码

// 短信二次认证
Map<String, String> authInfo = new HashMap<String, String>();

authInfo.put(SFConstants.AUTH_KEY_SMS, "验证码");

SFUemSDK.getInstance().doSecondaryAuth(SFAuthType.AUTH_TYPE_SMS, authInfo);

results matching ""

    No results matching ""