云眼卫士一键登录接入手册

一.准备工作

1.1 在开放平台门户上申请一键登录应用

  • 用户在 开放平台 注册账号 进入 控制台->授权登录应用

  • 进入 授权登录应用->视频能力 填写信息。

注意

一定要在“重定向地址栏里”填写正确的第三方平台对接地址。

  • 申请应用完成后待管理员审核,审核可能需要3-5个工作日。 待审核完成后,登录开放平台控制台,可看到审核完成的记录。

二.查看应用信息和调试工具

2.1 查看应用信息

点击应用详情和应用配置,可查看接入云眼卫士视频平台需要的appID,secret, RSA密钥等信息

2.2 调试工具

  • 点击调试按钮,跳转调试工具面板

  • 点击获取code按钮,弹出授权页面,输入云眼卫士账号验证码,拿到授权code

  • 测试的redirect-uri写入https://www.baidu.com?# 测试工具跳转到百度,在地址栏上复制网页地址可看到内容为:https://www.baidu.com/?state=unknown&code=783d3ecc526de225e29e00df598097c0# 可见授权码code就附在链接最后

  • 将获取到的code=783d3ecc526de225e29e00df598097c0贴入调试工具,点击获取token按钮 返回值当中就有刷新token,和跳转链接url。 使用url就可以直接一键登录进入云眼卫士前端页面

  • 若返回值中无url ,可继续点击获取访问链接按钮 最终得到的url 就可以直接一键登录云眼卫士前端页面

三.接入调试

3.1 第三方接入一键登录能力流程图

3.2 第三方平台获取授权码

获取token相关接口无需遵循总体规范

授权登录云眼卫士应用采用 OAuth 2.0 标准定义的方式来完成应用授权,目前仅支持 Authorization Code Grant 模式

第三方前端通过授权页链接获取授权码code

  • 获取授权页链接(authorization endpoint)

     https://open.andmu.cn/normal/oauth/authorize?response_type=code&client_id={appid}&redirect_uri={xxx}&state={xxx}
    
     redirect_uri 回调时携带的参数:
     - client_id :用信息里可查看到的应用Id
     - redirect_uri :申请应用时第三方填入的重定向地址
     - state :状态值,不能为空
    
  • 授权页验证通过后,物联网平台会将授权码code放入重定向地址中。第三方平台可通过重定向地址拿到授权码code

  • 第三方平台拿到授权码code后,可向物联网平台获取访问令牌和刷新令牌

授权码code使用一次后即失效

3.3 第三方平台获取访问令牌(token)

  • 获取访问令牌接口
https://open.andmu.cn/normal/oauth/token

post 参数:

  • grant_type : 授权类型,固定值 authorization_coderefresh_token
  • client_id : 应用ID,在应用信息里面查看
  • client_secret : 应用密码,在应用信息里面查看
  • redirect_uri : 重定向网址,获取code时传入的redirect_uri
  • code : 授权码,来源于通过redirect_uri回调时携带的code
  • refresh_token: 刷新 access_token, grant_type 为refresh_token必传

响应报文:

{
  "access_token": "xxx",
  "refresh_token": "yyy",
  "token_type": "bearer",
  "expires_in": 7200,
  "url": "https://qly.andmu.cn/normal/#/login?token={xxx}"
}

刷新token(refresh_token)有效时长为半年

根据以上接口若返回值中有url地址, 则可以直接通过url访问云眼卫士web(仅能使用一次)。若未拿到url,则根据access_token 通过下面的接口获取一键登录链接

3.4 第三方平台获取一键登录链接

https://open.andmu.cn/normal/oauth/getLoginUrl

post 参数:

  • accessToken : 访问令牌

响应报文:

{
  "url": "https://qly.andmu.cn/normal/#/login?token={xxx}"
}

访问令牌(access_token)有效时间为2小时,且仅能使用一次。即返回的url登录成功后立即失效