更新时间:2024-08-29 GMT+08:00
分享

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)信息。

本章节将介绍说明不同的操作用户身份在操作资源时,对应的事件列表中“操作用户”信息的示例,以方便用户更直观的理解操作用户信息。

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

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

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。详情请参见切换角色(被委托方操作)

云服务委托身份

操作用户为“云服务委托身份”时,审计日志中的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"。

idp_id是指IAM身份提供商名称。idp_id获取方式:进入统一身份认证服务控制台,在身份供应商页面查看身份供应商名称(idp_id)。

相关文档