
# 如何将合作伙伴Token置换为客户Token
#### 操作步骤
1. 调用IAM接口"[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)"获取合作伙伴华为云账户Token。
   ![](https://support.huaweicloud.com/bpconsole_faq/public_sys-resources/note_3.0-zh-cn.png)
   IAM接口的Endpoint请参考"[地区和终端节点](https://developer.huaweicloud.com/endpoint)"页面列举的IAM Endpoint。如果请求体中scope字段中为domain，请使用区域为"ALL"的Endpoint。如果scope字段中为project，既可以使用区域为"ALL"的Endpoint，也可以使用相应project所在区域对应的Endpoint。
   此步操作不需要传入任何Token，请求Header中仅需增加"Content-Type"，取值为"application/json"。示例如[图1]所示，图中红框Headers中的"x-subject-token"字段就是合作伙伴Token。
   请求体示例：
   ```
   {
       "auth": {
           "identity": {
               "methods": [
                   "password"
               ],
               "password": {
                   "user": {
                       "name": "合作伙伴的华为云账户",
                       "domain": {
                           "name": "合作伙伴的华为云账户"
                       },
                       "password": "XXXXX"
                   }
               }
           },
           "scope": {
               "domain": {
                   "name": "合作伙伴的华为云账户"
               }
           }
       }
   }
   ```
   图1获取合作伙伴华为云账户Token   
   ![](https://support.huaweicloud.com/bpconsole_faq/zh-cn_image_0130351117.png "点击放大") 
2. 调用IAM接口"[通过assume_role方式获取用户token](https://support.huaweicloud.com/api-iam/iam_30_0003.html)"获取合作伙伴客户的华为云账户Token。
   请求Header中需要增加Content-Type和X-Auth-Token，其中Content-Type取值为"application/json"，X-Auth-Token取值为[1]中获取的BP Token。示例如[图2]所示，图中红框Headers中的"x-subject-token"字段就是合作伙伴客户的华为云账户Token。合作伙伴使用客户的华为云账户Token可以去操作客户华为云账户的资源。
   请求体示例：
   ```
   {
       "auth": {
           "identity": {
               "methods": [
                   "assume_role"
               ],
               "assume_role": {
                   "domain_name": "合作伙伴客户的华为云账户",
                   "agency_name": "创建委托关系时的委托名称（合作伙伴平台标识xaccountType）"
               }
           },
           "scope": {
               "project": {
                   "name": "合作伙伴客户资源所在的project name"
               }
           }
       }
   }
   ```
   图2获取合作伙伴客户的华为云账户Token   
   ![](https://support.huaweicloud.com/bpconsole_faq/zh-cn_image_0000001623524708.png "点击放大")
   响应体解读：
   - readonly角色就是Tenant Guest权限，te_admin是Tenant Administrator权限，如[图3]所示。
     图3权限解读   
     ![](https://support.huaweicloud.com/bpconsole_faq/zh-cn_image_0130351123.png "点击放大") 
   
   - [图4]红框中是返回的project id。
     图4项目ID   
     ![](https://support.huaweicloud.com/bpconsole_faq/zh-cn_image_0130351126.png "点击放大") 
    
 
