用户认证与第三方受权
智汀家庭云提供用户登录认证与第三方受权性能,包含用户凭证、Scope Token 与长期明码。
1. 用户凭证
每一个用户帐号创立时都会主动生成一个随机的用户凭证,该凭证会保留在智汀家庭云与智汀 APP 内,应用该凭证能够领有该用户的所有权限。用户凭证通过 smart-assistant-token HTTP 申请头的形式发送。
2. Scope Token
第三方 APP 或者智汀云须要申请智汀家庭云的接口时,须要应用 Scope Token 进行鉴权拜访。Scope Token 在生成时 能够抉择其领有的接口权限范畴,并且会设置过期工夫,保障第三方无奈越权应用。Scope Token 通过 scope-token HTTP 申请头发送。
Scope Token 为 JWT 格局,其校验密钥为用户凭证。通常状况下应蕴含以下字段:
- sa_id: 智汀家庭云初始化时的 ID
- uid: 智汀家庭云中对应的用户 ID
- exp:过期工夫
- scopes: 权限范畴,字符串,以 (,) 分隔
- 其余业务相干字段
留神:敏感信息不能存储于 JWT 中
Scope Token 受权流程如下:
3. 长期明码
通常状况下,智汀家庭云通过颁发 Scope Token 来限度第三方拜访范畴,但偶然咱们也须要让可信赖的第三方执行某些治理性能,但颁发具备全权限的 Scope Token 又放心存在危险;智汀家庭云提供长期明码来解决此问题:
- 智汀 APP 应用用户凭证申请智汀家庭云接口,生成长期明码,该长期明码具备用户的所有权限
- 将长期明码输出到可信赖的第三方平台(如智汀云)
- 第三方平台凭此长期明码与附加的用户 ID,SA-ID 等信息拜访智汀家庭云接口
- 智汀家庭云解决申请后立即将该长期明码生效,防止越权应用