1.3.3.2 账号用户服务配置
账号及用户服务配置
更新时间:2018-08-03 15:27:52
服务使用入口
账号及用户服务属于Link Develop提供的官方服务之一,主要用于帮助开发者快速搭建自有用户体系,实现账号登录、注册、用户管理等等。开发者在使用服务前,需要先在控制台进行服务开启,方才可以使用。
服务配置入口(可用资源-官方资源-服务):
环境说明:服务使用时,可分“开发环境”和“生产环境”进行使用,可在“开发环境”下进行配置操作,确认操作后再同步到生产环境,可有效规避操作生产环境的风险。</span>
开启服务
- 获得应用列表 在选择服务点击“配置”后,会进入服务配置页面,该页面会区分两个环境操作“开发环境”和“生产环境”,进入页面默认加载开发环境的下该项目的应用列表,如没有应用,需先创建应用。
选择应用,开启服务
选择需要开启该服务的应用,点击选择开启。确认开启,开启后,会同步开启该应用生产环境的服务,意味着采用生产环境的Appkey和AppSecret可以调用该服务;另外服务开启后,不可关闭。
用户属性配置
用户属性配置用于开发者在使用本服务时,可以为自己的用户体系,配置出所需要的用户属性,该配置非必选。
用户属性数据使用范围:用户属性配置后,会在该项目下生效,该项目下所有应用都可以使用。
- 默认属性项说明:手机号码和邮箱地址由于会默认用于账号的注册和登录,所以无需再进行添加。
- 新增属性:支持从属性列表里选择或者进行自定义,点击“新增属性”按钮,弹出定义弹窗。
- 可在已定义的属性列表里选择常用的属性
- 选择后,只有描述可编辑,其他项均被定义。
- 如属性列表中没有合适的属性,可进行自定义。
- 基于属性的操作 在开发环境中属性添加后可以支持删除和修改配置。 修改自定义属性配置时,除属性英文标识外其余信息可被修改。
同步到生产环境
- 在开发环境配置后,如开发者验证无误,可同步到生产环境中使用。点击“同步”按钮。
- 确认同步后在生产环境生效。
- 生产环境中可查询信息,不能直接编辑修改。
三方自有账号对接
控制台配置
用户服务基于Oauth2.0 API协议提供厂商三方自有账号对接功能, 支持厂商仅使用自有账号,或同时使用账号服务和自有账号。若需使用三方自有账号功能,可在开启用户服务后进行自有账号对接的配置。
步骤1:在开发环境选择需使用自有账号的应用,点击自有账号对接
- 步骤2:完成自有账号对接的相关参数配置并确认保存,其中访问/刷新URL和 GetuserinfoURL 需厂商提供前缀,详细对接文档请参考下文
- 步骤3:在开发环境进行测试,若测试成功需再在生产环境配置一遍。
三方账号登录流程说明
第一步
获取Authorization Code,此步骤由三方厂商直接下发。
第二步
1、通过Authorization Code获取Access Token
URL如:https://third.com/oauth2.0/get\_access\_token,querystring根据厂商的配置信息自动拼接,注意字段名称需匹配。
请求方法:Post
请求参数:
字段说明 | 类型 | 描述 |
---|---|---|
grant_type | String | 授权类型,这里固定为字符串 authorization_code |
client_id | String | appKey |
client_secret | String | appSecret |
code | String | 第三步返回的authCode |
返回字段:如果成功返回,即可在返回包中获取到Access Token,如:
字段说明 | 类型 | 描述 |
---|---|---|
access_token | String | 授权令牌,Access_Token。 |
expires_in | String | 该access token的有效期,单位为秒。 |
refresh_token | String | 在授权自动续期步骤中,获取新的Access_Token时需要提供的参数。 |
openid | String | 用户唯一标识 |
result_code/message | String | 公共结果码和Message |
2、刷新access_token(权限自动续期)
URL与获取AccessToken一致,但grant_type不同。
URL如:https://third.com/oauth2.0/get_access_token,querystring根据厂商的配置信息自动拼接, 注意字段名称需匹配。
请求方法:Post
请求参数:
字段说明 | 类型 | 描述 |
---|---|---|
grant_type | String | 授权类型,这里固定为字符串: refresh_token |
client_id | String | appKey |
client_secret | String | appSecret |
refresh_token | String | 获取accessToken返回的refresh_token |
返回字段:
字段说明 | 类型 | 描述 |
---|---|---|
access_token | String | 授权令牌,Access_Token。 |
expires_in | String | 该access token的有效期,单位为秒。 |
refresh_token | String | 在授权自动续期步骤中,获取新的Access_Token时需要提供的参数。 |
result_code/message | String | 公共结果码和Message |
第三步
通过access_token、openid获取用户信息
URL如:https://thrid.com/sns/userinfo
请求方法:Post
请求参数:
字段说明 | 类型 | 描述 |
---|---|---|
access_token | String | 第二步获取的access token |
openid | String | 用户唯一标识 |
返回字段
返回JSON数据:
{
"result_code": "0" 字符串
"message": "成功",
"openid":" OPENID", 字符串类型,必须
"nick_name": NICKNAME, 字符串类型 必须
"mobile":"1xxx", 字符串类型 可选
"avatar_url": "image.com/xxxx.png" 可选
"gender": "1" 1: 男 2:女 0:未知
}
公共返回结果码约定
结果码 | 说明 |
---|---|
0 | 成功 |
100001 | AccessToken过期 |
100002 | 用code换取access token值失败 |
100003 | RefreshToken已过期或已失效 |
100004 | 用户改密或解除授权导致AccessToken失效 |
100005 | AccessToken非法 |
100006 | 无效的OpenId |
110000 | 系统通用错误(无法--列出其他所有错误,需联系三方ISV |
开始使用服务
开启服务后,可以开始使用本服务,了解服务API调用。