创建使用权后,您可以查看、更新或删除使用权。
准备工作
确保您已启用 Privileged Access Manager 并为其设置权限。
使用 Google Cloud 控制台查看、更新和删除权限
前往 Privileged Access Manager 页面。
选择您要管理权限的组织、文件夹或项目。
在使用权标签页中,点击所有用户的使用权标签页。您可以在此处查找可用的权限、它们授予的角色以及有效的请求者和审批者。
在表格中,点击您要检查的权限所在行中的
更多选项。如需查看使用权详情,请点击查看使用权详情。
如需查看与相应使用权相关联的授权,请点击查看关联的授权。
如需撤消对该使用权的所有有效授权,请点击撤消所有授权。
如需删除相应使用权,请点击删除使用权。您无法删除包含有效授权的使用权。您必须先撤消授权。
如需更新某项使用权,请点击与要更新的使用权位于同一行的
修改使用权。更新使用权时,请注意以下事项:
更新后的权限配置仅适用于在更新后请求的授权。不过,批准者更改也会应用于尚未获得批准或拒绝的现有授权请求。
更新使用权时,您无法更改是否需要批准。如果您需要更改审批状态,请改为创建新的使用权。
对某项权限的请求者和审批者所做的更改可能需要几分钟才能传播。
以编程方式查看使用权
如需以编程方式查看权限,您可以搜索、列出、获取和导出权限。
列出使用权
gcloud
gcloud beta pam entitlements list
命令会列出属于特定范围的权限。
在使用下面的命令数据之前,请先进行以下替换:
RESOURCE_TYPE
:可选。该使用权所属的资源类型。使用值organization
、folder
或project
。RESOURCE_ID
:与RESOURCE_TYPE
一起使用。您要为其管理使用权的 Google Cloud 项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud beta pam entitlements list \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud beta pam entitlements list ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud beta pam entitlements list ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您应该会收到类似如下所示的响应:
additionalNotificationTargets: adminEmailRecipients: - alex@example.com createTime: '2024-03-26T11:07:37.009498890Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 3600s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-03-26T11:07:40.056780645Z'
REST
Privileged Access Manager API 的 listEntitlements
方法会列出属于特定范围的权限。
在使用任何请求数据之前,请先进行以下替换:
SCOPE
:相应使用权在其中的组织、文件夹或项目,格式为organizations/ORGANIZATION_ID
、folders/FOLDER_ID
或projects/PROJECT_ID
。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。FILTER
:可选。返回字段值与 AIP-160 表达式匹配的使用权。PAGE_SIZE
:可选。响应中要返回的项数。PAGE_TOKEN
:可选。使用上一个响应中返回的页码令牌,从哪个页面开始响应。
HTTP 方法和网址:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements?filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
[ { "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "createTime": "2023-11-21T17:28:39.962144708Z", "updateTime": "2023-11-21T17:28:43.160309410Z", "eligibleUsers": [ { "principals": [ "user:alex@example.com" ] } ], "approvalWorkflow": { "manualApprovals": { "steps": [ { "approvers": [ { "principals": [ "user:bola@example.com" ] } ], "approvalsNeeded": 1 } ] } }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "maxRequestDuration": "14400s", "state": "AVAILABLE", "requesterJustificationConfig": { "unstructured": {} }, "additionalNotificationTargets": { "adminEmailRecipients": [ "alex@example.com" ] }, "etag": "00000000000000000000000000000000000000000000000000000000000=" } ]
获取使用权
gcloud
gcloud beta pam entitlements describe
命令会检索特定的使用权。
在使用下面的命令数据之前,请先进行以下替换:
ENTITLEMENT_ID
:您要获取详细信息的使用权的 ID。RESOURCE_TYPE
:可选。该使用权所属的资源类型。使用值organization
、folder
或project
。RESOURCE_ID
:与RESOURCE_TYPE
一起使用。您要为其管理使用权的 Google Cloud 项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud beta pam entitlements describe \ ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud beta pam entitlements describe ` ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud beta pam entitlements describe ^ ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您应该会收到类似如下所示的响应:
additionalNotificationTargets: adminEmailRecipients: - alex@example.com createTime: '2024-03-26T11:07:37.009498890Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 3600s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-03-26T11:07:40.056780645Z'
REST
Privileged Access Manager API 的 getEntitlement
方法可检索特定的使用权。
在使用任何请求数据之前,请先进行以下替换:
SCOPE
:从中获取权限的组织、文件夹或项目,格式为organizations/ORGANIZATION_ID
、folders/FOLDER_ID
或projects/PROJECT_ID
。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。ENTITLEMENT_ID
:您要获取详细信息的使用权的 ID。
HTTP 方法和网址:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "createTime": "2023-11-21T17:28:39.962144708Z", "updateTime": "2023-11-21T17:28:43.160309410Z", "eligibleUsers": [ { "principals": [ "user:alex@example.com" ] } ], "approvalWorkflow": { "manualApprovals": { "steps": [ { "approvers": [ { "principals": [ "user:bola@example.com" ] } ], "approvalsNeeded": 1 } ] } }, "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/my-project", "roleBindings": [ { "role": "roles/storage.admin" } ] } }, "maxRequestDuration": "14400s", "state": "AVAILABLE", "requesterJustificationConfig": { "unstructured": {} }, "additionalNotificationTargets": { "adminEmailRecipients": [ "alex@example.com" ] }, "etag": "00000000000000000000000000000000000000000000000000000000000=" }
使用 gcloud CLI 导出使用权
gcloud beta pam entitlements export
命令会将特定的使用权导出到 YAML 文件。
在使用下面的命令数据之前,请先进行以下替换:
ENTITLEMENT_ID
:要导出的使用权的 ID。FILENAME
:要将使用权内容导出到的文件名。RESOURCE_TYPE
:可选。该使用权所属的资源类型。使用值organization
、folder
或project
。RESOURCE_ID
:与RESOURCE_TYPE
一起使用。您要为其管理使用权的 Google Cloud 项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud beta pam entitlements export \ ENTITLEMENT_ID \ --destination=FILENAME.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud beta pam entitlements export ` ENTITLEMENT_ID ` --destination=FILENAME.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud beta pam entitlements export ^ ENTITLEMENT_ID ^ --destination=FILENAME.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您应该会收到类似如下所示的响应:
Exported [projects/my-project/locations/global/entitlements/ENTITLEMENT_ID] to 'FILENAME.yaml'.
以编程方式更新使用权
更新使用权时,请注意以下事项:
更新后的权限配置仅适用于在更新后请求的授权。不过,批准者更改也会应用于尚未获得批准或拒绝的现有授权请求。
更新使用权时,您无法更改是否需要批准。如果您需要更改审批状态,请改为创建新的使用权。
对某项权限的请求者和审批者所做的更改可能需要几分钟才能传播。
gcloud
gcloud beta pam entitlements update
命令用于更新特定的使用权。
在使用下面的命令数据之前,请先进行以下替换:
ENTITLEMENT_ID
:要更新的使用权的 ID。RESOURCE_TYPE
:可选。该使用权所属的资源类型。使用值organization
、folder
或project
。RESOURCE_ID
:与RESOURCE_TYPE
一起使用。您要为其管理使用权的 Google Cloud 项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。FILENAME
:包含修改后的使用权配置的文件。如需创建此文件,请获取或导出现有权限,将响应保存在 YAML 文件中,然后修改该文件以用作更新请求的正文。您必须在正文中添加 ETAG,才能更新最新版本的使用权。如需了解可更改或添加的字段,请参阅以编程方式创建使用权。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud beta pam entitlements update \ ENTITLEMENT_ID \ --entitlement-file=FILENAME.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud beta pam entitlements update ` ENTITLEMENT_ID ` --entitlement-file=FILENAME.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud beta pam entitlements update ^ ENTITLEMENT_ID ^ --entitlement-file=FILENAME.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您应该会收到类似如下所示的响应:
Request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done. Updated entitlement [ENTITLEMENT_ID]. approvalWorkflow: manualApprovals: requireApproverJustification: true steps: - approvalsNeeded: 1 approvers: - principals: - user:alex@example.com createTime: '2024-04-09T02:39:37.011866832Z' eligibleUsers: - principals: - user:bola@example.com etag: 00000000000000000000000000000000000000000000000000000000000= maxRequestDuration: 7200s name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID privilegedAccess: gcpIamAccess: resource: //cloudresourcemanager.googleapis.com/projects/my-project resourceType: cloudresourcemanager.googleapis.com/Project roleBindings: - role: roles/storage.admin requesterJustificationConfig: unstructured: {} state: AVAILABLE updateTime: '2024-04-09T02:39:40.066770306Z'
REST
Privileged Access Manager API 的 updateEntitlement
方法可更新特定的使用权。
在使用任何请求数据之前,请先进行以下替换:
SCOPE
:相应使用权在其中的组织、文件夹或项目,格式为organizations/ORGANIZATION_ID
、folders/FOLDER_ID
或projects/PROJECT_ID
。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。ENTITLEMENT_ID
:要更新的使用权的 ID。-
UPDATED_FIELDS
:在使用权中更新的字段的英文逗号分隔列表。例如:?updateMask=privilegedAccess,maxRequestDuration
对于所有可更新的字段,请将更新掩码设置为
*
。 REQUEST_ID
:可选。必须是非零 UUID。如果服务器收到带有请求 ID 的请求,则会检查是否有其他带有该 ID 的请求在过去 60 分钟内已完成。如果是,则系统会忽略新请求。request.json
:包含修改后的使用权配置的文件。如需创建此文件,请获取或导出现有使用权,将响应保存在名为request.json
的文件中,然后修改该文件以用作更新请求的正文。您必须在正文中添加 ETAG,才能更新最新版本的使用权。如需了解可更改或添加的字段,请参阅以编程方式创建使用权。
HTTP 方法和网址:
PATCH https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?updateMask=UPDATED_FIELDS&requestId=REQUEST_ID
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/my-project/locations/global/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata", "createTime": "2024-03-25T01:55:02.544562950Z", "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "verb": "update", "requestedCancellation": false, "apiVersion": "v1beta" }, "done": false }
如需检查更新操作的进度,您可以向以下端点发送 GET
请求:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID
向以下端点发送 GET
请求以列出所有操作:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations
以编程方式删除使用权
gcloud
gcloud beta pam entitlements delete
命令用于删除特定的使用权。
在使用下面的命令数据之前,请先进行以下替换:
ENTITLEMENT_ID
:要删除的使用权的 ID。RESOURCE_TYPE
:可选。该使用权所属的资源类型。使用值organization
、folder
或project
。RESOURCE_ID
:与RESOURCE_TYPE
一起使用。您要为其管理使用权的 Google Cloud 项目、文件夹或组织的 ID。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud beta pam entitlements delete \ ENTITLEMENT_ID \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud beta pam entitlements delete ` ENTITLEMENT_ID ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud beta pam entitlements delete ^ ENTITLEMENT_ID ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您应该会收到类似如下所示的响应:
Delete request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done. Deleted entitlement [ENTITLEMENT_ID].
REST
Privileged Access Manager API 的 deleteEntitlement
方法可删除特定的使用权。
在使用任何请求数据之前,请先进行以下替换:
SCOPE
:要删除相应使用权的组织、文件夹或项目,格式为organizations/ORGANIZATION_ID
、folders/FOLDER_ID
或projects/PROJECT_ID
。项目 ID 是字母数字字符串,例如my-project
。文件夹和组织 ID 是数字,例如123456789012
。ENTITLEMENT_ID
:要删除的使用权的 ID。REQUEST_ID
:可选。必须是非零 UUID。如果服务器收到带有请求 ID 的请求,则会检查是否有其他带有该 ID 的请求在过去 60 分钟内已完成。如果是,则系统会忽略新请求。
HTTP 方法和网址:
DELETE https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?requestId=REQUEST_ID
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/my-project/locations/global/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata", "createTime": "2024-03-06T02:28:28.020293460Z", "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1beta" }, "done": false }
如需检查删除操作的进度,您可以向以下端点发送 GET
请求:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID
向以下端点发送 GET
请求以列出所有操作:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations