
# 登录前鉴权
在您的系统中使用云客服前，我们需要通过基于Ak/Sk的认证接口（tokenByAkSk）进行鉴权与认证。
1. 调用云客服侧API Fabric校验接口tokenByAkSk进行认证，获取AccessToken。 
   1. 选择一种接口测试工具，发起请求来获取云客服返回的Token。
   
   2. 按以下格式要求获取URL，选择POST方式。 HTTPS方法**：**POST
      URL：https://Domain Address/apigovernance/api/oauth/tokenByAkSk
      ![](https://support.huaweicloud.com/devg-agentlite-cec/public_sys-resources/note_3.0-zh-cn.png)
      - Domain Address请根据云客服实际的地址或域名进行替换。 例如，在华为公有云生产环境，请将Domain Address替换为service.besclouds.com，则调用URL为**https://service.besclouds.com/apigovernance/api/oauth/tokenByAkSk**
        
      
      - HTTP协议是不安全协议，可能会对系统带来风险，不推荐使用。建议使用安全的HTTPS协议
        
   
   3. 将app_key和app_secret的值按调用样例的格式输入到Body，获得AccessToken值，如[图1]所示，您可以通过[表1]和[表2]了解请求参数属性和返回参数属性的要求。
   
   
   图1AccessToken调用   
   ![](https://support.huaweicloud.com/devg-agentlite-cec/figure/zh-cn_image_0000001266713232.png)
    表1RequestBody说明 
   | 参数名        | 参数类型   | 参数位置 | 是否必填 | 说明                                                                                                                     |
   |:---|:---|:---|:---|:---|
   | app_key    | string | body | True | API Fabric（云客服接口管理中心）上创建的App对应的APP Key。 开租成功后，云客服运营管理员会同时发送该Key值，请妥善保存。 |
   | app_secret | string | body | True | API Fabric的创建的App对应的APP Secret。 开租成功后，云客服运营管理员会同时发送该secret值，请妥善保存。      |
      
   - Example
   
   
   ```
   {
   "app_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
   "app_secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
   }
   ```
   
    表2ResponseBody说明 
   | 参数名         | 参数类型   | 参数位置 | 是否必填 | 说明                                                           |
   |:---|:---|:---|:---|:---|
   | AccessToken | string | body | True | 通过API Fabric 上创建的APP Key和APP Secret，获取的输出参数token，后续用于调用同步信息。 |
   | ApplyType   | string | body | True | Token类型，当前只支持Bearer。                                         |
   | CreateTime  | string | body | True | Token创建时间。                                                   |
   | Expires     | string | body | True | Token过期时间。                                                   |
   | Scope       | string | body | True | Token能够访问的API范围。                                             |
   | AppKey      | string | body | True | App对应的APP Key。                                               |
   | UserID      | string | body | True | 用户标识。                                                        |
      
   - Example
   
   
   ```
   {
   "AccessToken": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
   "ApplyType": "Bearer",
   "CreateTime": "1543395801",
   "Expires": "600",
   "Scope": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
   "AppKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
   "UserID": "sysAdmin"
   }
   ```
   
   
   
 
