4. 认证对接排障思路
1. 确保网络连通性正常,蓝信客户端发起的请求能到达零信Center,此处参考免认证web应用的排障方法。
2. 参数调试,https认证经常会因为某个标点字符、大小写配置不对导致对接失败,这里就需要抓包或看认证调试日志进行排查,如果是后端服务器是http,则可以直接抓零信任到认证服务器的数据包,查看认证请求和响应报文与接口文档的差异,如果后端服务器是https,则只能看认证调试日志排查。
atrust_tool log set sdp-passport DEBUG #开启调试日志
atrust_tool log set sdp-passport INFO #关闭调试日志
cp /hislog/log/sdp-passport/sdp-passport-web.log /shared/web.log #将日志复制到webconsole的文件管理中,可以从文件管理中下载到本地
注意排障结束后关闭调试日志,避免消耗设备额外性能。
分析认证调试日志时可以搜索认证接口路径,例如“/v1/CheckAuth ”,找到对应时间点的认证请求响应报文内容,对比接口文档进行差异分析。
5. 常见对接问题
由于是两个系统对接,对接不成功主要原因还是两边参数不一致,从过去的项目来看,有以下常见原因:
1. 网络连通性异常
2. 零信任配置的认证接口与认证服务器的接口不一致,例如大小写、字符。
3. SDK传递的用户名认证域与https认证服务器配置的认证域不一致,可通过审计日志中的认证日志判断。
4. 零信任配置的请求参数不对
5. SDK在password字段传递的参数不对。
6. 响应配置中认证成功条件配置不对
7. 响应数据预处理脚本不对
以上2-7的排障均可通过分析认证调试日志、抓包(非加密流量)定位,除此之外还有其他各种异常问题,均可以分析调试日志定位原因。