简体中文

APP登录VSaaS

星空无限传媒xk8027-高清全集免费看

一、概述

本章节将介绍客户基于自有用户管理系统(AM)对接VSaaS云存储功能的实现方案。VSaaS平台自带设备管理功能(DM),支持设备与方案绑定、事件查询/回放/下载/删除等操作,第三方系统通过认证对接后可直接使用这些功能。
核心对接逻辑:通过OAuth 2.0协议实现第三方AM系统与VSaaS平台的身份认证,完成用户信息校验和令牌交换,最终第三方APP可通过VSaaS Token访问云存储相关功能。

二、第三方认证流程

3rdauth2.png

图:VSaaS第三方认证对接流程

第三方认证用于云端服务器之间的用户信息合法性校验,采用OAuth 2.0协议流程,具体步骤如下:
  • 1. 用户使用第三方APP注册账号,并通过登录API登录第三方AM系统;
  • 2. 第三方AM系统返回特定的auth code给第三方APP;
  • 3. 第三方APP调用「Get Vsaas Token API」,携带auth code请求TUTK VSaaS服务器;
  • 4. TUTK VSaaS服务器调用「Get Access Token API」,从第三方AM系统获取Access Token,具体可参考:用户信息认证
  • 5. 第三方AM系统返回Access Token给TUTK VSaaS服务器;
  • 6. TUTK VSaaS服务器调用「Get User Info API」,携带Access Token从第三方AM系统获取用户信息;
  • 7. 第三方AM系统返回用户信息给TUTK VSaaS服务器;
  • 8. TUTK VSaaS服务器验证用户信息合法性,生成VSaaS Token并返回给第三方APP;
  • 9. 第三方APP可通过「VSaaS Refresh Token API」从TUTK VSaaS服务器获取刷新令牌(refresh token),用于Token过期后重新获取。

三、API接口

(一)获取VSaaS令牌(Get vsaas token)
第三方APP通过此接口向VSaaS服务器提交auth code,获取用于访问VSaaS功能的核心令牌(vsaas token)。
1. 请求说明
说明
HTTP请求方式POST(VSaaS固定URL:https://vsaas-domain/vsaas/api/v1/auth/oauth_token?realm={realm}
请求头(Header)Authorization: Basic {base64(client_id:client_secret)}(客户自有client_id和client_secret,需与VSaaS预先配置一致)
Content-Type: application/x-www-form-urlencoded
2. 请求参数
参数名类型必选说明
realmString由TUTK提供,用于区分不同客户
grant_typeString固定值:"authorization_code"
codeString第三方AM系统返回的auth code(授权码)
scopeString权限范围,多个权限用空格分隔(由VSaaS定义支持的权限)
stateStringAPP生成的随机字符串,用于防止CSRF攻击,响应将返回相同值
3. 响应说明
3.1 响应参数
参数名类型说明
access_tokenStringVSaaS核心令牌,用于访问云存储及设备管理功能
token_typeString固定返回:"Bearer"
expires_inString令牌有效期(单位:秒),默认3小时(10800秒)
refresh_tokenStringVSaaS刷新令牌,用于access_token过期后重新获取
scopeString实际授予的权限范围
3.2 响应状态码
状态码徽章说明
200成功请求成功,返回VSaaS令牌及相关信息
400参数错误realm、code缺失或格式错误
401认证失败client_id/client_secret无效,或auth code已过期
4. 接口示例
请求示例(curl)
curl -X POST https://vsaas-domain/vsaas/api/v1/auth/oauth_token?realm={realm} \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=authorization_code&code=theauthcode'
响应示例(成功)
{  "expires_in": 10800,  "scope": "read write",  "token_type": "Bearer",  "refresh_token": "BqVK9Dv8EdS7fCxVKtIAvlzHCNn9eg",  "access_token": "sDDJFhDo80cstYKnWBhq7ErA2dP45Y" }
(二)刷新VSaaS令牌(Refresh Vsaas Token)
当VSaaS的access_token过期时,第三方APP通过此接口使用refresh_token获取新的access_token。
1. 请求说明
说明
HTTP请求方式POST(VSaaS固定URL:https://vsaas-domain/vsaas/api/v1/auth/refresh_token?realm={realm}
请求头(Header)Authorization: {原access_token}(过期前的有效access_token)
Content-Type: application/x-www-form-urlencoded
2. 请求参数
参数名类型必选说明
realmString由TUTK提供,与获取VSaaS令牌时一致
grant_typeString固定值:"refresh_token"
refresh_tokenString上一次获取VSaaS令牌时返回的refresh_token
client_idString由TUTK提供的客户唯一标识
client_secretString由TUTK提供的客户密钥
3. 响应说明
3.1 响应参数
参数名类型说明
access_tokenString新的VSaaS访问令牌
token_typeString固定返回:"Bearer"
expires_inString新令牌有效期(单位:秒),默认3小时(10800秒)
refresh_tokenString新的刷新令牌(支持循环使用)
scopeString权限范围(与原令牌一致)
3.2 响应状态码
状态码徽章说明
200成功请求成功,返回新的VSaaS令牌
400参数错误必填参数缺失或格式错误
401认证失败refresh_token无效、client_id/client_secret错误,或realm不匹配
4. 接口示例
请求示例(curl)
curl -X POST https://vsaas-domain/vsaas/api/v1/auth/refresh_token/ \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=refresh_token&refresh_token=BqVK9Dv8EdS7fCxVKtIAvlzHCNn9eg&client_id=0Feq934VvPK4CZW9FTdKCtnYHo2CApSSLxhBDXTK&client_secret=DdVaF0eitGygXCPRt7OtJJGwQHEbWq7A6ddqkDekyqwkxHJG2XrqwmQ5ZOn3tTTDTlpNjkgffXmCnfU26e0frlt8dulI0iz59tuSxdvdq63NHrPUVUNxuzX7mreJs7ip'
响应示例(成功)
{  "expires_in": 10800,  "scope": "read write",  "token_type": "Bearer",  "refresh_token": "QDTw4Q3pp9PuSwe2WOW7QV2bviXuaC",  "access_token": "h8kz9fLfuk0x77Co8rJZAveTAhn71L" }

四、对接资料

对接前需第三方平台需向TUTK提供以下资料,TUTK将根据客户的需求,生成并提供对应的对接资料,确保认证流程正常打通:
(一)TUTK 提供的资料
资料名称用途说明
realm客户唯一标识,用于VSaaS平台区分不同对接客户
plan id云存储方案ID,绑定设备时使用
client_idVSaaS分配给客户的唯一标识,用于令牌交换时的身份校验
client_secretVSaaS分配给客户的密钥,用于令牌交换时的签名校验
vsaas backend urlVSaaS后端服务地址(含令牌接口、设备管理接口等)
(二)客户需要提供的资料
资料名称用途说明
client_id客户AM系统分配给VSaaS的唯一标识(用于VSaaS访问客户AM接口)
client_secret客户AM系统分配给VSaaS的密钥(用于VSaaS访问客户AM接口)
token交换的url客户AM系统的令牌交换接口URL(支持获取/刷新Access Token)
用户信息认证的url客户AM系统的用户信息查询接口URL(支持通过Access Token获取用户email)

即刻开启您的物联网之旅

联系解决方案专家
Kalay App
资讯安全白皮书
全球专利布局
解决方案
新闻动态
公司动态
行业资讯
媒体报道
永续发展
经营者的话
社会参与
环境永续
公司治理

+86 755 27702549

7×24小时服务热线

法律声明 隐私权条款

关注“TUTK”

TUTK服务尽在掌握

© 2022 星空无限传媒xk8027版权所有粤ICP备14023641号
在线咨询
扫一扫

TUTK服务尽在掌握

全国免费服务热线
+86 755 27702549

返回顶部