# 获取扮演角色的临时身份凭证 - AssumeRole

## 简介

获取扮演角色的临时身份凭证





## 定义

### 公共参数

| 参数名 | 类型 | 描述信息 | 必填 |
|:---|:---|:---|:---|
| **Action**     | string  | 对应的 API 指令名称，当前 API 为 `AssumeRole`                        | **Yes** |
| **PublicKey**  | string  | 用户公钥，可从 [控制台](https://console.dezai.com/uaccount/api_manage) 获取                                             | **Yes** |
| **Signature**  | string  | 根据公钥及 API 指令生成的用户签名，参见 [签名算法](/docs/api/summary/signature.md)  | **Yes** |

### 请求参数

| 参数名 | 类型 | 描述信息 | 必填 |
|:---|:---|:---|:---|
| **RoleUrn** | string | 要扮演的 IAM 角色URN。 |**Yes**|
| **RoleSessionName** | string | 角色会话名称。格式允许 字母、数字、下划线（_）、连字符（-）、英文（.）组成的 1-64 位字符。 |**Yes**|
| **DurationSeconds** | int | Token有效期，单位：秒。最小值 900，最大值受限于角色配置的最大会话时间。 |No|
| **Policy** | string | 为STS Token额外添加的一个权限策略，进一步限制STS Token的权限。 |No|

### 响应字段

| 字段名 | 类型 | 描述信息 | 必填 |
|:---|:---|:---|:---|
| **RetCode** | int | 返回状态码，为 0 则为成功返回，非 0 为失败 |**Yes**|
| **Action** | string | 操作指令名称 |**Yes**|
| **Message** | string | 返回错误消息，当 `RetCode` 非 0 时提供详细的描述信息 |No|
| **Credentials** | [*Credentials*](#Credentials) | 访问凭证。 |No|

#### 数据模型


#### Credentials

| 字段名 | 类型 | 描述信息 | 必填 |
|:---|:---|:---|:---|
| **SecurityToken** | string | 安全令牌。 |**Yes**|
| **AccessKeyId** | string | 密钥ID。 |**Yes**|
| **AccessKeySecret** | string | 密钥Secret。 |**Yes**|
| **Expiration** | string | Token到期失效时间（UTC时间）。 |**Yes**|

## 示例

### 请求示例
    
```
https://api.dezai.com/?Action=AssumeRole
&RoleUrn=FwesBQjA
&RoleSessionName=jFbSZIhm
&DurationSeconds=1
&Policy=BhQicCmh
```

### 响应示例
    
```json
{
  "Action": "AssumeRoleResponse",
  "Credentials": {},
  "RetCode": 0
}
```





