查看主账号访问边界政策

通过主账号访问边界 (PAB) 政策,您可以限制一组主账号有资格访问的资源。本页介绍了如何查看主账号访问边界政策以及主账号访问边界政策的政策绑定。

准备工作

  • 设置身份验证。

    Select the tab for how you plan to use the samples on this page:

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

    如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证

  • 阅读主账号访问边界政策概览

查看主账号访问边界政策所需的角色

如需获得查看主账号访问权限边界政策所需的权限,请让您的管理员为您授予组织的 Principal Access Boundary Viewer (roles/iam.principalAccessBoundaryViewer) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色包含查看主账号访问权限边界政策所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需查看主账号访问边界政策,您需要具备以下权限:

  • 查看单个主账号访问边界政策: iam.principalaccessboundarypolicies.get
  • 列出组织中的主账号访问边界政策: iam.principalaccessboundarypolicies.list

您也可以使用自定义角色或其他预定义角色来获取这些权限。

查看政策绑定所需的角色

如需获得查看政策绑定所需的权限,请让您的管理员为您授予政策绑定的父级资源的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

这些预定义角色包含查看政策绑定所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

查看政策绑定需要以下权限:

  • 查看单个政策绑定: iam.policybindings.get
  • 列出项目、文件夹或组织中的政策绑定: iam.policybindings.list

您也可以使用自定义角色或其他预定义角色来获取这些权限。

查看主账号访问边界政策的所有政策绑定所需的角色

如需获得查看主账号访问边界政策的所有政策绑定所需的权限,请让您的管理员为您授予组织的 Principal Access Boundary Viewer (roles/iam.principalAccessBoundaryViewer) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色可提供查看主账号访问边界政策的所有政策绑定所需的 iam.principalaccessboundarypolicies.searchIamPolicyBindings 权限。

您也可以使用自定义角色或其他预定义角色来获取此权限。

查看主账号集的政策绑定所需的角色

查看主账号集的所有政策绑定所需的权限取决于您要查看政策的主账号集。

如需获得查看政策绑定所需的权限,请让您的管理员为您授予以下 IAM 角色:

  • 查看员工身份联合池的政策绑定:目标员工身份联合池的 IAM Workforce Pool Admin (roles/iam.workforcePoolAdmin)
  • 查看工作负载身份联合池的政策绑定:拥有目标工作负载身份联合池的 IAM Workload Identity Pool Admin (roles/iam.workloadIdentityPoolAdmin)
  • 查看 Google Workspace 网域的政策绑定:组织的 Workspace Pool IAM Admin (roles/iam.workspacePoolAdmin)
  • 查看项目的主账号集的政策绑定:项目的 Project IAM Admin (roles/resourcemanager.projectIamAdmin)
  • 查看文件夹的主账号集的政策绑定:针对文件夹的 Folder IAM Admin (roles/resourcemanager.folderIamAdmin)
  • 查看组织的主账号集的政策绑定:针对组织的 Organization Administrator (roles/resourcemanager.organizationAdmin)

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

这些预定义角色包含查看政策绑定所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

查看政策绑定需要以下权限:

  • 查看工作负载身份联合池的政策绑定:目标工作负载身份联合池的 iam.workforcePools.searchPolicyBindings
  • 查看工作负载身份联合池的政策绑定:拥有目标工作负载身份联合池的项目的 iam.workloadIdentityPools.searchPolicyBindings
  • 查看 Google Workspace 网域的政策绑定:针对组织的 iam.workspacePools.searchPolicyBindings
  • 查看项目的主账号集的政策绑定:针对项目的 resourcemanager.projects.searchPolicyBindings
  • 查看文件夹的主账号集的政策绑定:针对文件夹的 resourcemanager.folders.searchPolicyBindings 权限
  • 查看组织的主账号集的政策绑定:针对组织的 resourcemanager.organizations.searchPolicyBindings

您也可以使用自定义角色或其他预定义角色来获取这些权限。

列出组织的主账号访问边界政策

如需查看在组织中创建的所有主账号访问边界政策,请列出组织中的主账号访问边界政策。

您可以使用 Google Cloud 控制台、gcloud CLI 或 IAM REST API 列出组织中的主账号访问边界政策。

控制台

  1. 在 Google Cloud 控制台中,前往主账号访问权限边界政策页面。

    前往“主账号访问权限边界政策”

  2. 选择要为其创建主账号访问边界政策的组织。

Google Cloud 控制台会列出您所选组织中的所有政策。

gcloud

gcloud beta iam principal-access-boundary-policies list 命令可列出组织中的所有主账号访问边界政策。

在使用下面的命令数据之前,请先进行以下替换:

  • ORG_ID:要为其列出主账号访问边界政策的 Google Cloud 组织的 ID。组织 ID 是数字,例如 123456789012
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam principal-access-boundary-policies list --organization=ORG_ID \
    --location=global  --format=FORMAT

Windows (PowerShell)

gcloud beta iam principal-access-boundary-policies list --organization=ORG_ID `
    --location=global  --format=FORMAT

Windows (cmd.exe)

gcloud beta iam principal-access-boundary-policies list --organization=ORG_ID ^
    --location=global  --format=FORMAT

响应包含指定组织中的主账号访问边界政策。

{
  "principalAccessBoundaryPolicies": [
    {
      "createTime": "2024-05-07T00:05:48.295209Z",
      "details": [
        "enforcementVersion": 1,
        "rules": {
          [
            "description": "Make principals eligible to access resources in example.com",
            "effect": ALLOW,
            "resources": {
              "//cloudresourcemanager.googleapis.com/organizations/123456789012"
            }
          ]
        }
      ],
      "displayName": "Example policy 1",
      "etag": "W/\"Gh/PcTdJD/AWHUhPW45kdw==\"",
      "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy-1",
      "uid": "puid_13364150419245236225",
      "updateTime": "2024-05-07T00:05:48.295209Z"
    },
    {
      "createTime": "2024-02-29T23:25:01.606730Z",
      "details": [
        "enforcementVersion": 1,
        "rules": {
          [
            "description": "Make principals eligible to access resources in example-project",
            "effect": ALLOW,
            "resources": {
              "//cloudresourcemanager.googleapis.com/projects/example-project"
            }
          ]
        }
      ],
      "displayName": "Example policy 2",
      "etag": "d6BJBTsk2+oDCygmr5ANxA==",
      "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy-2",
      "uid": "puid_13064942519001808897",
      "updateTime": "2024-02-29T23:25:01.606730Z"
    }
  ]
}

REST

principalAccessBoundaryPolicies.list 方法可列出组织中的所有主账号访问边界政策。

在使用任何请求数据之前,请先进行以下替换:

  • ORG_ID:要为其列出主账号访问边界政策的 Google Cloud 组织的 ID。组织 ID 是数字,例如 123456789012

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies

如需发送您的请求,请展开以下选项之一:

响应包含指定组织中的主账号访问边界政策。

{
  "principalAccessBoundaryPolicies": [
    {
      "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy-1",
      "uid": "puid_13364150419245236225",
      "etag": "W/\"Gh/PcTdJD/AWHUhPW45kdw==\"",
      "displayName": "Example policy 1",
      "createTime": "2024-05-07T00:05:48.295209Z",
      "updateTime": "2024-05-07T00:05:48.295209Z",
      "details": [
        "rules": {
          [
            "description": "Make principals eligible to access resources in example.com",
            "resources": {
              "//cloudresourcemanager.googleapis.com/organizations/123456789012"
            },
            "effect": ALLOW
          ]
        },
        "enforcementVersion": 1,
      ]
    },
    {
      "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy-2",
      "uid": "puid_13064942519001808897",
      "etag": "d6BJBTsk2+oDCygmr5ANxA==",
      "displayName": "Example policy 2",
      "createTime": "2024-02-29T23:25:01.606730Z",
      "updateTime": "2024-02-29T23:25:01.606730Z",
      "details": [
        "rules": {
          [
            "description": "Make principals eligible to access resources in example-project",
            "resources": {
              "//cloudresourcemanager.googleapis.com/projects/example-project"
            },
            "effect": ALLOW
          ]
        },
        "enforcementVersion": 1
      ]
    }
  ]
}

获取单个主账号访问边界政策

如需查看单个主账号访问权限边界政策的详细信息,请使用该政策的 ID 获取该政策。

您可以使用 Google Cloud 控制台、gcloud CLI 或 IAM REST API 获取主账号访问边界政策。

控制台

  1. 在 Google Cloud 控制台中,前往主账号访问权限边界政策页面。

    前往“主账号访问权限边界政策”

  2. 选择要为其创建主账号访问边界政策的组织。

  3. 点击要查看的授权主账号访问权限边界政策的政策 ID。

Google Cloud 控制台会显示您选择的主账号访问权限边界政策的详细信息。

gcloud

gcloud beta iam principal-access-boundary-policies describe 命令可获取单个主账号访问边界政策。

在使用下面的命令数据之前,请先进行以下替换:

  • PAB_POLICY_ID:您要获取的主账号访问权限边界政策的 ID,例如 example-policy
  • ORG_ID:拥有主账号访问边界政策的组织的 ID。组织 ID 是数字,例如 123456789012
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam principal-access-boundary-policies describe PAB_POLICY_ID \
    --organization=ORG_ID --location=global \
    --format=FORMAT

Windows (PowerShell)

gcloud beta iam principal-access-boundary-policies describe PAB_POLICY_ID `
    --organization=ORG_ID --location=global `
    --format=FORMAT

Windows (cmd.exe)

gcloud beta iam principal-access-boundary-policies describe PAB_POLICY_ID ^
    --organization=ORG_ID --location=global ^
    --format=FORMAT

响应包含请求中指定的主账号访问边界政策。

{
  "createTime": "2024-05-07T00:05:48.295209Z",
  "details": [
    "enforcementVersion": "1",
    "rules": {
      [
        "description": "Make principals eligible to access example.com",
        "effect": ALLOW,
        "resources": {
          "//cloudresourcemanager.googleapis.com/organizations/123456789012"
        }
      ]
    },
  ],
  "displayName": "Example policy",
  "etag": "W/\"Gh/PcTdJD/AWHUhPW45kdw==\"",
  "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy",
  "uid": "puid_13364150419245236225",
  "updateTime": "2024-05-07T00:05:48.295209Z"
}

REST

principalAccessBoundaryPolicies.get 方法可获取单个主账号访问边界政策。

在使用任何请求数据之前,请先进行以下替换:

  • ORG_ID:拥有主账号访问边界政策的组织的 ID。组织 ID 是数字,例如 123456789012
  • PAB_POLICY_ID:您要获取的主账号访问权限边界政策的 ID,例如 example-policy

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID

如需发送您的请求,请展开以下选项之一:

响应包含请求中指定的主账号访问边界政策。

{
  "name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy",
  "uid": "puid_13364150419245236225",
  "etag": "W/\"Gh/PcTdJD/AWHUhPW45kdw==\"",
  "displayName": "Example policy",
  "createTime": "2024-05-07T00:05:48.295209Z",
  "updateTime": "2024-05-07T00:05:48.295209Z",
  "details": [
    "rules": {
      [
        "description": "Make principals eligible to access example.com"
        "resources": {
          "//cloudresourcemanager.googleapis.com/organizations/123456789012"
        },
        "effect": ALLOW
      ]
    },
    "enforcementVersion": "1"
  ]
}

列出主账号访问边界政策的政策绑定

您可以通过多种方式列出主账号访问边界政策的政策绑定:

列出主账号访问边界政策的政策绑定

如需查看包含特定主账号访问边界政策的所有政策绑定,请搜索主账号访问边界政策的绑定。

您可以使用 Google Cloud 控制台、gcloud CLI 或 IAM REST API 查看主账号访问边界政策的所有政策绑定。

控制台

  1. 在 Google Cloud 控制台中,前往主账号访问权限边界政策页面。

    前往“主账号访问权限边界政策”

  2. 选择拥有您要查看绑定的主账号访问边界政策的组织。

  3. 点击要查看绑定的主账号访问权限边界政策的政策 ID。

  4. 点击绑定标签页。

绑定标签页列出了包含主账号访问边界政策的所有主账号访问边界政策绑定。

gcloud

gcloud beta iam principal-access-boundary-policies search-policy-bindings 命令可列出指定主账号访问边界政策的所有政策绑定。

在使用下面的命令数据之前,请先进行以下替换:

  • PAB_POLICY_ID:您要列出政策绑定的主账号访问权限边界政策的 ID,例如 example-policy
  • ORG_ID:拥有主账号访问边界政策的组织的 ID。组织 ID 是数字,例如 123456789012
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam principal-access-boundary-policies search-policy-bindings PAB_POLICY_ID \
    --organization=ORG_ID --location=global \
    --format=FORMAT

Windows (PowerShell)

gcloud beta iam principal-access-boundary-policies search-policy-bindings PAB_POLICY_ID `
    --organization=ORG_ID --location=global `
    --format=FORMAT

Windows (cmd.exe)

gcloud beta iam principal-access-boundary-policies search-policy-bindings PAB_POLICY_ID ^
    --organization=ORG_ID --location=global ^
    --format=FORMAT

响应包含指定主账号访问边界政策的政策绑定。

{
  "policyBindings": [
    {
      "createTime": "2024-05-06T18:08:24.729843Z",
      "displayName": "Example binding 1",
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding1",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_9519202237377675265",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "uid": "buid_9904260005517852673", 
      "updateTime": "2024-05-06T18:08:24.729843Z"
    },
    {
      "createTime": "2024-05-07T07:05:06.203861Z",
      "displayName": "Example binding 2",
      "etag": "W/\"cRMdDXbT82aLuZlvoL9Gqg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding2",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_9519202237377675265",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/projects/example-project"
      },
      "uid": "buid_4331055466646863873", 
      "updateTime": "2024-05-07T07:05:06.203861Z"
    }
  ]
}

REST

principalAccessBoundaryPolicies.searchPolicyBindings 方法可列出指定主账号访问边界政策的所有政策绑定。

在使用任何请求数据之前,请先进行以下替换:

  • ORG_ID:拥有主账号访问边界政策的组织的 ID。组织 ID 是数字,例如 123456789012
  • PAB_POLICY_ID:您要列出政策绑定的主账号访问权限边界政策的 ID,例如 example-policy

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID:searchPolicyBindings

如需发送您的请求,请展开以下选项之一:

响应包含指定主账号访问边界政策的政策绑定。

{
  "policyBindings": [
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding1",
      "uid": "buid_9904260005517852673", 
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "displayName": "Example binding 1",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
      "policyUid": "puid_9519202237377675265",
      "createTime": "2024-05-06T18:08:24.729843Z",
      "updateTime": "2024-05-06T18:08:24.729843Z"
    },
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding2",
      "uid": "buid_4331055466646863873", 
      "etag": "W/\"cRMdDXbT82aLuZlvoL9Gqg==\"",
      "displayName": "Example binding 2",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/projects/example-project"
      },
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
      "policyUid": "puid_9519202237377675265",
      "createTime": "2024-05-07T07:05:06.203861Z",
      "updateTime": "2024-05-07T07:05:06.203861Z"
    }
  ]
}

列出主账号集的政策绑定

如需查看包含特定主账号集的所有政策绑定,请搜索该主账号集的绑定。

这些绑定包含绑定到主账号集的主账号访问权限边界政策的 ID。如需查看这些政策的详细信息,请使用政策 ID 获取主账号访问权限边界政策

您可以使用 gcloud CLI 或 IAM REST API 查看主账号集的所有政策绑定。

gcloud

gcloud beta iam policy-bindings search-target-policy-bindings 命令可获取绑定到主账号集的所有主账号访问边界政策。

在使用下面的命令数据之前,请先进行以下替换:

  • RESOURCE_TYPE:目标主账号集是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectfolderorganization

    资源类型取决于您要列出政策绑定的主账号集的类型。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:目标主账号集的父级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • PRINCIPAL_SET:您要查看主账号访问权限边界政策绑定的主账号集。如需查看有效的主账号类型列表,请参阅支持的主账号集
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam policy-bindings search-target-policy-bindings \
    --RESOURCE_TYPE=RESOURCE_ID \
    --target=PRINCPAL_SET \
    --format=FORMAT

Windows (PowerShell)

gcloud beta iam policy-bindings search-target-policy-bindings `
    --RESOURCE_TYPE=RESOURCE_ID `
    --target=PRINCPAL_SET `
    --format=FORMAT

Windows (cmd.exe)

gcloud beta iam policy-bindings search-target-policy-bindings ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --target=PRINCPAL_SET ^
    --format=FORMAT

响应包含绑定到目标主账号集的所有政策绑定。

{
  "policyBindings": [
    {
      "createTime": "2024-05-06T18:08:24.729843Z",
      "displayName": "Example binding 1",
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding1",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy1",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_9519202237377675265",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "uid": "buid_9904260005517852673", 
      "updateTime": "2024-05-06T18:11:16.798841Z"
    },
    {
      "createTime": "2024-05-06T18:08:24.729843Z",
      "displayName": "Example binding 2",
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding2",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy2",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_10358560617928851457",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "uid": "buid_4331055466646863873", 
      "updateTime": "2024-05-06T18:11:16.798841Z"
    }
  ]
}

REST

SearchTargetPolicyBindings.search 方法可获取绑定到主账号集的所有主账号访问边界政策。

在使用任何请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:目标主账号集是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectsfoldersorganizations

    资源类型取决于您要列出政策绑定的主账号集的类型。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:目标主账号集的父级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • PRINCIPAL_SET:您要查看主账号访问权限边界政策绑定的主账号集。如需查看有效的主账号类型列表,请参阅支持的主账号集

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings:searchTargetPolicyBindings?target=PRINCPAL_SET

如需发送您的请求,请展开以下选项之一:

响应包含绑定到目标主账号集的所有政策绑定。

{
  "policyBindings": [
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding1",
      "uid": "buid_9904260005517852673", 
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "displayName": "Example binding 1",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy1",
      "createTime": "2024-05-06T18:08:24.729843Z",
      "updateTime": "2024-05-06T18:11:16.798841Z",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_9519202237377675265"
    },
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding2",
      "uid": "buid_4331055466646863873", 
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "displayName": "Example binding 2",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy2",
      "createTime": "2024-05-06T18:08:24.729843Z",
      "updateTime": "2024-05-06T18:11:16.798841Z",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_10358560617928851457"
    }
  ]
}

列出项目、文件夹或组织的政策绑定

如需查看特定项目、文件夹或组织的所有子级政策绑定,请列出该项目、文件夹或组织的政策绑定。

政策绑定的父级资源取决于在政策绑定中设置的主账号。如需了解详情,请参阅支持的主账号类型

您可以使用 gcloud CLI 或 IAM REST API 查看项目、文件夹或组织的所有政策绑定。

gcloud

gcloud beta iam policy-bindings list 命令会列出某个资源的所有子级政策绑定。

在使用下面的命令数据之前,请先进行以下替换:

  • RESOURCE_TYPE:政策绑定是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectfolderorganization

    资源类型取决于在政策绑定中设置的主账号。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:政策绑定是其子级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam policy-bindings list --RESOURCE_TYPE=RESOURCE_ID \
    --location=global \
    --format=FORMAT

Windows (PowerShell)

gcloud beta iam policy-bindings list --RESOURCE_TYPE=RESOURCE_ID `
    --location=global `
    --format=FORMAT

Windows (cmd.exe)

gcloud beta iam policy-bindings list --RESOURCE_TYPE=RESOURCE_ID ^
    --location=global ^
    --format=FORMAT

响应包含命令中资源的子级政策绑定。

{
  "policyBindings": [
    {
      "createTime": "2024-05-06T18:08:24.729843Z",
      "displayName": "Example binding 1",
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding-1",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy-1",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_9519202237377675265",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "uid": "buid_9904260005517852673", 
      "updateTime": "2024-05-06T18:08:24.729843Z"
    },
    {
      "createTime": "2024-05-07T07:05:06.203861Z",
      "displayName": "Example binding 2",
      "etag": "W/\"cRMdDXbT82aLuZlvoL9Gqg==\"",
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding-2",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy-2",
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policyUid": "puid_1566408245394800641",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "uid": "buid_4331055466646863873", 
      "updateTime": "2024-05-07T07:05:06.203861Z"
    }
  ]
}

REST

policyBindings.list 方法可列出某个资源的所有子级政策绑定。

在使用任何请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:政策绑定是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectsfoldersorganizations

    资源类型取决于在政策绑定中设置的主账号。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:政策绑定是其子级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings

如需发送您的请求,请展开以下选项之一:

响应包含请求中资源的子级政策绑定。

{
  "policyBindings": [
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding-1",
      "uid": "buid_9904260005517852673", 
      "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
      "displayName": "Example binding 1",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy-1",
      "policyUid": "puid_9519202237377675265",
      "createTime": "2024-05-06T18:08:24.729843Z",
      "updateTime": "2024-05-06T18:08:24.729843Z"
    },
    {
      "name": "organizations/123456789012/locations/global/policyBindings/example-binding-2",
      "uid": "buid_4331055466646863873", 
      "etag": "W/\"cRMdDXbT82aLuZlvoL9Gqg==\"",
      "displayName": "Example binding 2",
      "target": {
        "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
      },
      "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
      "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy-2",
      "policyUid": "puid_1566408245394800641",
      "createTime": "2024-05-07T07:05:06.203861Z",
      "updateTime": "2024-05-07T07:05:06.203861Z"
    }
  ]
}

获取主账号访问边界政策的政策绑定

如需查看单个政策绑定的详细信息,请使用政策绑定的 ID 获取政策绑定。

您可以使用 gcloud CLI 或 IAM REST API 获取政策绑定。

gcloud

gcloud beta iam policy-bindings describe 命令可获取政策绑定。

在使用下面的命令数据之前,请先进行以下替换:

  • BINDING_ID:您要获取的政策绑定的 ID,例如 example-binding
  • RESOURCE_TYPE:政策绑定是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectfolderorganization

    资源类型取决于在政策绑定中设置的主账号。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:政策绑定是其子级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • FORMAT:响应的格式。请使用 jsonyaml

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud beta iam policy-bindings describe BINDING_ID \
    --RESOURCE_TYPE=RESOURCE_ID --location=global \
    --format=FORMAT

Windows (PowerShell)

gcloud beta iam policy-bindings describe BINDING_ID `
    --RESOURCE_TYPE=RESOURCE_ID --location=global `
    --format=FORMAT

Windows (cmd.exe)

gcloud beta iam policy-bindings describe BINDING_ID ^
    --RESOURCE_TYPE=RESOURCE_ID --location=global ^
    --format=FORMAT

响应包含政策绑定。

{
  "createTime": "2024-05-06T18:08:24.729843Z",
  "displayName": "Example binding",
  "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
  "name": "organizations/123456789012/locations/global/policyBindings/example-binding",
  "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
  "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
  "policyUid": "puid_9519202237377675265",
  "target": {
    "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
  },
  "uid": "buid_9904260005517852673", 
  "updateTime": "2024-05-06T18:08:24.729843Z"
}

REST

policyBindings.get 方法可获取政策绑定。

在使用任何请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:政策绑定是其子级的 Resource Manager 资源(项目、文件夹或组织)的类型。使用值 projectsfoldersorganizations

    资源类型取决于在政策绑定中设置的主账号。如需了解要使用哪种资源类型,请参阅支持的主账号类型

  • RESOURCE_ID:政策绑定是其子级的项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • BINDING_ID:您要获取的政策绑定的 ID,例如 example-binding

HTTP 方法和网址:

GET https://iam.googleapis.com/v3beta/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings/BINDING_ID

如需发送您的请求,请展开以下选项之一:

响应包含政策绑定。

{
  "name": "organizations/123456789012/locations/global/policyBindings/example-binding",
  "uid": "buid_9904260005517852673", 
  "etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
  "displayName": "Example binding",
  "target": {
    "principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
  },
  "policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
  "policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
  "policyUid": "puid_9519202237377675265",
  "createTime": "2024-05-06T18:08:24.729843Z",
  "updateTime": "2024-05-06T18:08:24.729843Z"
}

后续步骤