鉴权认证机制

## 鉴权认证机制 ### 注意事项 - 所有场景默认采用 UTF-8 编码。 - Access Token 必须缓存在磁盘并定时刷新,原 Access Token 默认2小时(7200秒,具体时效见接口返回expires_in字段)失效,token失效前可能获取到相同token。 #### 简介 本文档主要针对HTTP API调用者,开放平台使用OAuth2.0授权调用开放API,调用API时必须在Header头中带上键为Authorization的access_token参数,获取Access Token的流程如下: ### 获取Access Token: #### 请求URL数据格式 向授权服务地址http://api.sinocloudlab.com/oauth/token发送请求(推荐使用POST),并在URL或body中带上以下参数: - grant_type: 必须参数,固定为client_credentials; - client_id: 必须参数,分配的API Key; - client_secret: 必须参数,分配的Secret Key; ### 请求 #### 请求方法:`GET` http://api.sinocloudlab.com/oauth/token?grant_type=client_credentials&client_id=分配的app_key&client_secret=分配的app_secret #### 获取access_token示例:`bash` #!/bin/bash curl -i -k 'http://api.sinocloudlab.com/oauth/token?grant_type=client_credentials&client_id=【分配的app_key】&client_secret=【分配的app_secret】' ### 响应 #### 服务器返回的JSON文本参数如下: - access_token: 要获取的Access Token; - expires_in: Access Token的有效期(秒为单位,一般为2小时); - 其他参数忽略,暂不使用; #### 结果示例: ``` { "access_token": "0ca1d6ca-529f-4e45-ac2c-e97910fc8b13", "token_type": "bearer", "expires_in": 7200, "scope": "userProfile" } ``` [签名算法](doc:ljYss6Dr)