功能介绍
本文档简要介绍竹云IDaaS平台提供的各类APP移动端认证功能,以及各功能的简要流程说明。
# 登录功能
# 用户名密码登录
通过输入账号和密码进行登录授权。(SDK只提供API,界面为调用方自行设计)
流程说明:
- 调用方自定义登录界面。
- 调用SDK输入用户名和密码登录。
- 返回sessionToken。
- 获取sessionToken后,还需要后端服务开发,请点击“验证Token”,了解后端服务开发内容。
- 了解如何进行登录接入,Android,iOS。
# 短信登录
通过输入手机号获取短信验证码实现登录授权。(SDK只提供API,界面为调用方自行设计)
流程说明:
- 短信登录界面为SDK内置。
- 短信登录界面为调用方自行设计。
- 输入手机号。
- 点击发送短信。
- 弹出滑动验证码模块验证。
- 验证成功之后会自动发送短信到用户手机。
- 输入验证码点击登录。
- 成功之后返回sessionToken。
- 获取sessionToken后,还需要后端服务开发,请点击“验证Token”,了解后端服务开发内容。
- 了解如何进行登录接入,Android,iOS。
滑动验证码模块为SDK内置不需要用户关注。
# 本机号码一键登录
依托运营商的移动数据网络,采用“通信网关取号”及SIM卡识别等技术,准确识别用户手机号码,实现免密登录。
# 社交登录
社交登录通常都是作为刚需被用户选择,但是各个平台的准入条件非常繁琐,除了需要正常对接各个平台的SDK外还需要维护平台之间的SDK版本以及兼容问题。
常规步骤为:
- 注册平台账号。
- 申请应用。
- 前端对接。
- 后端对接。
- 服务联调。
- 错误以及兼容问题排查。
- 长期跟踪各大平台SDK版本升级以及更改项。
使用OneAccess SDK只需要三步即可接入:
- 引入OneAccess SDK。
- 配置三方平台参数。
- 调用。
(图中红色部分为SDK完成)
流程说明(微信和支付宝流程一样):
- 社交登录界面按钮为调用方自行设计。
- 点击微信登录调用SDK微信登录方法。
- 弹出微信授权界面点击确认授权。
- 授权成功之后会返回微信的临时授权code。
- SDK通过授权code调用OneAccess服务端获取用户信息。
- 未绑定SDK会弹出绑定界面,输入手机号和验证码进行绑定返回sessionToken。
- 已绑定用户则直接返回sessionToken。
- APP拿到sessionToken后需要传递给后端进行校验。
- 进行支付宝登录集成开发,请点击“Android”或“IOS”开始试用。
- 进行微信登录集成开发,请点击“Android”或“IOS”开始试用。
- 拿到sessionToken后,还需要后端服务开发,请点击“验证Token”,了解后端服务开发内容。
集成案例(以微信为例):
点击微信登录。
未绑定状态:输入手机号获取验证码,弹出滑动校验。
开始滑动校验。
校验成功之后等待短信验证码:
输入验证码点击绑定即可。
# 验证Token
APP服务端需要校验SDK返回的sessionToken,获取用户信息。
流程说明:
- app端通过OneAccess SDK登录成功之后会获取sessionToken。
- app把获取的sessionToken传递给app后端。
- app后端首先需要获取OneAccess服务端API访问权限。
- 得到OneAccess服务端返回的API授权凭证。
- 携带sessionToken和授权凭证换取ssoTicket。
- 通过授权凭证和ssoTicket获取用户信息。
- 返回用户信息(可配置返回信息,参考下图)。
保持sessionToken时效。
接下来:
了解服务端集成接口。
# 登录保持
登录之后如何做到会话持久化,提供了会话有效期的配置(请参考开始里面的接入准备第3步)。接入方在登录成功拿到用户会话后需要将这个用户会话保存到服务端,并记录自己配置的会话有效期时间,可以选择在会话到期前一天或一小时来刷新这个会话。这样接入方就可以实现会话持久化了。
流程说明:
- app端拿到SDK返回的sessionToken之后,app服务端进行sessionToken校验。
- 校验成功之后app服务端自行保存,并存储过期时间。
- 如发现sessionToken快过期,可调用OneAccess API进行刷新。
- 返回最新的sessionToken。
# 自服务
# 实名认证
实名认证是对用户身份信息真实性进行验证审核的服务,提供人脸核身、身份信息核验、银行卡要素核验等各类实名信息认证能力,以解决行业内大量对用户身份信息真实性核实的需求。
# 第三方账号管理
用户授权第三方平台账号登录后,系统会自动跟主体账号进行绑定关联,如果需要进行解绑可通过此模块操作。
流程说明:
- 用户点击APP上的微信或者支付宝登录。
- 拿到返回的sessionToken。
- APP通过传递sessionToken调用第三方账号管理。
- SDK请求后端获取当前账号已经绑定的第三方账号列表信息。
- SDK弹出内置管理界面。
- 用户可以查看也可以点击某一项进行解绑操作。
集成效果(如图):
点击其中某一项可进行解绑操作。
# 界面定制
OneAccess SKD支持部分页面UI轻量定制化(如图所示)。