身份认证2.0

接口功能概述

服务云平台的所有接口需要经过认证授权后方可调用。因此,在接入服务云平台时,首先需要调用方向[服务云PO]申请接入的应用ID(appId)及密钥(secret)。开通后,方可进行接口调用。

身份认证说明

获取认证码时序图

时序图

说明

  • 请求地址

    正式:https://zenith.fdcyun.com/v20/api/account/app/login.svc
    测试:https://planet-test.fdcyun.com/v20/api/account/app/login.svc
    
    运维工具AgentX登录请使用数据中心的域名
    
  • 请求方式: POST
  • 请求头(header)
    Content-Type: application/json; charset=utf-8
    
  • 请求体(body)
    {
    "AppId": "xxx",
    "Secret": "xxx",
    "CustId": "98f591f8-7c58-4611-92ed-8663e61832f8" //用户测试环境
    }
    
  • 参数说明
参数名 类型 说明
AppId string 服务云平台颁发的应用ID,不同环境值不相同
Secret string 服务云平台颁发的应用密钥,不同环境值不相同
CustId string 客户主数据GUID ==[新增]==
TenantId string 运维租户ID,运维Agent专用 ==[新增][可选]==
  • 接口返回示例
Response Body

成功返回,http状态码为 200

xxx.xxx.xxx

失败返回,http状态码为 500

{
    "Message": "没有找到客户",
    "ExceptionType":"System.Exception",
    "xxx": "xxx" //后续扩展
}

其他http状态码说明

代码 说明
200 请求成功
403 未授权
500 具体错误信息,如:应用ID不存在

SaaS产品认证

关于saas产品认证,可以不传递具体的custid,将上述请求地址修改为 saaslogin.svc即可 。如https://zenith.fdcyun.com/v20/api/account/app/saaslogin.svc,参数如下:

{
  "AppId": "xxx",
  "Secret": "xxx"
}

后续操作具体的租户时,再传递客户主数据id进行客户切换操作:

header

x-custid:xxxx //客户主数据GUID

Agent认证

对于AgentX认证,可以将传递的custid直接替位tenantId,将上述请求地址修改为 agentlogin.svc 。如https://databus.fdcyun.com/v20/api/account/app/agentlogin.svc,参数如下:

{
  "AppId": "xxx",
  "Secret": "xxx",
  "TenantId": "my5747e8d734bf2"
}

特别说明

==该接口有请求次数限制:单应用每天限制调用10000次,因此,建议在获取到token后由应用端进行缓存。==

==关于token自动续期:后续所有请求,如果在响应头中出现了x-token,请将本地token进行更新==

更新说明

  • 20190225 初版。
  • 20190304 第二版,表单提交修改为json对象提交。删除部分: Method: POST Protocol : HTTP/1.1 Content-Type: application/x-www-form-urlencoded; charset=utf-8 appid=xxx&secret=xxx&custId=31456b79-83b2-418e-a47b-6e06ab0d7c57
  • 20190313 更新saas产品登录,去除custid的强制校验。
  • 20190328 开放外部saas登录接口。
  • 20190410 新增Agent登录接口。