
# IAM身份与操作用户对应关系
华为云统一身份认证服务（Identity and Access Management，简称IAM）提供不同类型的身份，IAM提供的身份包括：IAM用户、IAM委托、云服务委托、IAM身份中心、联邦用户。
不同的操作用户身份在进行操作时，上报到CTS审计日志中的"操作用户"信息有区别，以下展示不同身份的"操作用户"的操作用户名称（user.name字段）、身份ID（principal_id字段）格式规范：
| 操作用户身份  | 身份类型（type）    | 操作用户名称格式（user.name）              | 身份ID格式（principal_id）                  |
|:---|:---|:---|:---|
| IAM用户   | User          | \<user-name\>                    | \<user-id\>                           |
| IAM委托   | AssumedAgency | \<domain-name\>/\<agency-name\>  | \<agency-id\>:\<agency-session-name\> |
| 云服务委托   | AssumedAgency | \<domain-name\>/\<agency-name\>  | \<agency-id\>:\<agency-session-name\> |
| IAM身份中心 | AssumedAgency | \<domain-name\>/\<agency-name\>  | \<agency-id\>:\<agency-session-name\> |
| 联邦用户    | ExternalUser  | \<idp_id\>/\<user-session-name\> | \<idp_id\>:\<user-session-name\>      |
   
在云审计事件列表的"操作用户"一栏，可以查看对应事件的操作用户（user.name）信息。
![](https://support.huaweicloud.com/usermanual-cts/zh-cn_image_0000002382873540.png "点击放大")
本章节将介绍说明不同的操作用户身份在操作资源时，对应的事件列表中"操作用户"信息的示例，以方便用户更直观地理解操作用户信息。
#### IAM用户身份
操作用户为"IAM用户"时，审计日志中的user字段示例如下：
```
{
    "access_key_id": "HSTAZ***YE2GA",
    "account_id": "7e0d78c85***d0b9b7cba",
    "user_name": "IAMUserA",
    "domain": {
        "name": "IAMDomainB",
        "id": "7e0d78c85***d0b9b7cba"
    },
    "name": "IAMUserA",
    "principal_is_root_user": "true",
    "id": "f36972ced***d619f1214",
    "principal_urn": "iam::7e0d78c85***d0b9b7cba:user:IAMUserA",
    "type": "User",
    "principal_id": "f36972ced***d619f1214"
}
```
在以上信息中，"user"字段记录了操作用户的信息，本示例中操作用户为"IAMUserA"（name字段）。在以上信息中，可以重点关注如下字段：
| 字段名           | 说明                                                                                                        |
|:---|:---|
| user_name     | 操作用户的用户名称。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中获取"IAM用户名"。本示例中为"IAMUserA"。                                   |
| name          | 操作用户的用户名称。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中获取"IAM用户名"。本示例中为"IAMUserA"。                                   |
| id            | 操作用户的用户ID。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中的"IAM用户ID"。本示例中为"f36972ced\*\*\*d619f1214"。                   |
| principal_id  | 操作用户的身份ID。格式为 user-id。本示例中为"f36972ced\*\*\*d619f1214"。                                                    |
| principal_urn | 操作用户身份的URN。格式为 iam::\<account-id\>:user:\<user-name\>。本示例中为"iam::7e0d78c85\*\*\*d0b9b7cba:user:IAMUserA"。 |
| domain.name   | 操作用户的账号名称。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中的"账号名"。本示例中为"IAMUserB"。                                       |
| domain.id     | 操作用户的账号ID。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中的"账号ID"。本示例中为"7e0d78c85\*\*\*d0b9b7cba"。                      |
| account_id    | 操作用户的账号ID。在控制台右上角用户名的下拉选项中，选择"我的凭证"，在我的凭证页面中的"账号ID"。本示例中为"7e0d78c85\*\*\*d0b9b7cba"。                      |
   
#### IAM委托身份
操作用户为"IAM委托身份"时，审计日志中的user字段示例如下：
```
{
    "access_key_id": "HSTAB***6DEEB",
    "invoked_by": [
      "service.console"
    ],
    "account_id": "302893da***5a7453e5733",
    "domain": {
      "name": "hc_beta_***",
      "id": "302893da***5a7453e5733"
    },
    "name": "hc_beta_***/agencyname",
    "session_context": {
      "attributes": {
        "created_at": "1724744585642",
        "mfa_authenticated": "false"
      },
      "assumed_by": {
        "principal_id": "3cd5b27548***a58b5801d9d"
      }
    },
    "principal_urn": "sts::302893da***5a7453e5733:assumed-agency:agencyname/null",
    "type": "AssumedAgency",
    "principal_id": "40c79f4571***8bc54784b61:null"
}
```
在以上信息中，"user"字段记录了操作用户的信息，本示例中操作用户为"hc_beta_\*\*\*/agencyname"（name字段）。在以上信息中，可以重点关注如下字段：
| 字段名                                     | 说明                                                                                                                                                                      |
|:---|:---|
| name                                    | 操作用户的用户名称。格式为\<domain-name\>/\<agency-name\>。                                                                                                                           |
| principal_id                            | 操作用户的身份ID。格式为 \<agency-id\>:\<agency-session-name\>。本示例中为"40c79f4571\*\*\*8bc54784b61:null"。                                                                            |
| principal_urn                           | 操作用户身份的URN。IAM委托身份的格式为sts::\<account-id\>:assumed-agency:\<agency-name\>/\<agency-session-name\> 。本示例中为"sts::302893da\*\*\*5a7453e5733:assumed-agency:agencyname/null"。 |
| session_context.assumed_by.principal_id | 被委托方账号在IAM "切换角色" 的用户ID。详情请参见[切换角色（被委托方操作）](https://support.huaweicloud.com/usermanual-iam/iam_06_0003.html)。                                                           |
   
#### 云服务委托身份
操作用户为"云服务委托身份"时，审计日志中的user字段示例如下：
```
{
    "access_key_id": "HSTAR***LG6FC",
    "account_id": "302893da***53e5733",
    "domain": {
      "name": "hc_beta_***",
      "id": "302893da***53e5733"
    },
    "name": "hc_beta_***/ServiceLinkedAgencyForCloudTraceService",
    "session_context": {
      "attributes": {
        "created_at": "1724744380046",
        "mfa_authenticated": "false"
      },
      "assumed_by": {
        "service_principal": "service.CTS"
      }
    },
    "principal_urn": "sts::302893da***53e5733:assumed-agency:ServiceLinkedAgencyForCloudTraceService/302893da***53e5733",
    "type": "AssumedAgency",
    "principal_id": "4bc820d3***b786c83:302893da***53e5733"
}
```
在以上信息中，"user"字段记录了操作用户的信息，本示例中操作用户为"hc_beta_\*\*\*/ServiceLinkedAgencyForCloudTraceService"（name字段）。在以上信息中，可以重点关注如下字段：
| 字段名                                          | 说明                                                                                                                                                                                                        |
|:---|:---|
| name                                         | 操作用户的用户名称。格式为\<domain-name\>/\<agency-name\>。本示例中为"hc_beta_\*\*\*/ServiceLinkedAgencyForCloudTraceService"。                                                                                               |
| principal_id                                 | 操作用户的身份ID。格式为 \<agency-id\>:\<agency-session-name\>。本示例中为"4bc820d3\*\*\*b786c83:302893da\*\*\*53e5733"。                                                                                                   |
| principal_urn                                | 操作用户身份的URN。格式为sts::\<account-id\>:assumed-agency:\<agency-name\>/\<agency-session-name\> 。本示例中为"sts::302893da\*\*\*53e5733:assumed-agency:ServiceLinkedAgencyForCloudTraceService/302893da\*\*\*53e5733"。 |
| session_context.assumed_by.service_principal | 委托云服务的名称。格式为service.\<service-name\>。                                                                                                                                                                     |
   
#### IAM身份中心身份
操作用户为"IAM身份中心身份"时，审计日志中的user字段示例如下：
```
{
    "access_key_id": "HSTA9***CKG7E",
    "invoked_by": [
      "service.console"
    ],
    "account_id": "302893da***53e5733",
    "domain": {
      "name": "hc_beta_***",
      "id": "302893da***53e5733"
    },
    "name": "hc_beta_***/SysReservedV3_evs-FullAccess-***",
    "session_context": {
      "attributes": {
        "created_at": "1724744395079",
        "mfa_authenticated": "false"
      },
      "assumed_by": {
        "service_principal": "service.IdentityCenter"
      }
    },
    "principal_urn": "sts::302893da***53e5733:assumed-agency:SysReservedV3_evs-FullAccess-***/IdentityCenterUsername",
    "type": "AssumedAgency",
    "principal_id": "dbc60d8***ef5fd807:***"
}
```
在以上信息中，"user"字段记录了操作用户的信息，本示例中操作用户为"hc_beta_\*\*\*/SysReservedV3_evs-FullAccess-\*\*\*"（name字段）。在以上信息中，可以重点关注如下字段：
| 字段名                                          | 说明                                                                                                                                                                                                     |
|:---|:---|
| name                                         | 操作用户的用户名称。服务关联委托身份的格式为\<domain-name\>/\<agency-name\>。本示例中为"hc_beta_\*\*\*/SysReservedV3_evs-FullAccess-\*\*\*"。                                                                                       |
| principal_id                                 | 操作用户的身份ID。格式为 \<agency-id\>:\<agency-session-name\>。本示例中为"dbc60d8\*\*\*ef5fd807:\*\*\*"。                                                                                                               |
| principal_urn                                | 操作用户身份的URN。格式为sts::\<account-id\>:assumed-agency:\<agency-name\>/\<agency-session-name\> 。本示例中为"sts::302893da\*\*\*53e5733:assumed-agency:SysReservedV3_evs-FullAccess-\*\*\*/IdentityCenterUsername"。 |
| session_context.assumed_by.service_principal | 委托云服务的名称。固定为service.IdentityCenter。                                                                                                                                                                    |
   
#### 联邦用户身份
操作用户为"联邦用户身份"时，审计日志中的user字段示例如下：
```
{
    "access_key_id": "HSTAX***3IBZB",
    "account_id": "797c8fc3c***2dc6bf70bd",
    "domain": {
      "name": "***",
      "id": "797c8fc3c***2dc6bf70bd"
    },
    "name": "provider_name/UserA",
    "session_context": {
      "federation_data": {
        "identity_provider": "provider_name",
        "protocol": "SAML",
        "group_Ids": [
          "fedf7a460***46451be85"
        ]
      }
    },
    "principal_urn": "sts::797c8fc3c***2dc6bf70bd:external-user:provider_name/UserA",
    "type": "ExternalUser",
    "principal_id": "provider_name:UserA"
}
```
在以上信息中，"user"字段记录了操作用户的信息，本示例中操作用户为"provider_name/UserA"（name字段）。在以上信息中，可以重点关注如下字段。
| 字段名           | 说明                                                                                                                                                         |
|:---|:---|
| name          | 操作用户的用户名称。格式为\<idp_id\>/\<user-session-name\>。本示例中为"provider_name/UserA"。                                                                                  |
| principal_id  | 操作用户的身份ID。格式为 \<idp_id\>:\<user-session-name\>。本示例中为"provider_name:UserA"。                                                                                 |
| principal_urn | 操作用户身份的URN。格式为 sts::\<account-id\>:external-user:\<idp_id\>/\<user-session-name\>。本示例中为"sts::797c8fc3c\*\*\*2dc6bf70bd:external-user:provider_name/UserA"。 |
   
![](https://support.huaweicloud.com/usermanual-cts/public_sys-resources/note_3.0-zh-cn.png)
idp_id是指IAM身份提供商名称。idp_id获取方式：进入统一身份认证服务控制台，在身份供应商页面查看身份供应商名称（idp_id）。
![](https://support.huaweicloud.com/usermanual-cts/zh-cn_image_0000002382873544.png "点击放大")
