鉴权认证机制
## 鉴权认证机制
### 注意事项
- 所有场景默认采用 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数据格式
向授权服务地址https://openapi.sinocloudlab.com/oauth/token发送请求(推荐使用POST),并在URL或body中带上以下参数:
- grant_type: 必须参数,固定为client_credentials;
- client_id: 必须参数,分配的API Key;
- client_secret: 必须参数,分配的Secret Key;
### 请求
**请求方法**:`GET`
```
https://openapi.sinocloudlab.com/oauth/token?grant_type=client_credentials&client_id=CcAVEo5WftFwZW7OEqflNTsg&client_secret=I6osonfTxp4ZOnjt46XLPbO5NTO0shFS
```
**获取access_token示例**:`bash `
```bash
#!/bin/bash
curl -i -k 'https://openapi.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小时);
- 其他参数忽略,暂不使用;
**结果示例**:
```json
{
"access_token": "0ca1d6ca-529f-4e45-ac2c-e97910fc8b13",
"token_type": "bearer",
"expires_in": 7200,
"scope": "userProfile"
}
```
[签名算法](doc:MHaXIJs8)