主體成功要求授權後,如果授權有效,具有privilegedaccessmanager.grants.revoke權限的主體可以撤銷授權。如果授權不是有效狀態,就無法撤銷。
事前準備
請確認您已啟用 Privileged Access Manager 並設定相關權限。
使用 Google Cloud 控制台撤銷授權
如要撤銷對權利授予的特定授權,請按照下列指示操作:
前往「Privileged Access Manager」頁面。
選取要撤銷授權的機構、資料夾或專案。
按一下「授予項目」分頁標籤,然後按一下「所有使用者的授予項目」分頁標籤。 這份報表包含所有要求者獲得的所有授權、授權狀態,以及相關聯的授權詳細資料。
在表格中,找到要撤銷的授權,然後按一下該列中的「更多選項」。
如要撤銷有效授權,請按一下「撤銷授權」。
如要撤銷對授權的所有有效授權,請完成下列指示:
前往「Privileged Access Manager」頁面。
依序點選「權利」分頁標籤和「所有使用者的權利」分頁標籤。您可以在這裡查看可用的權利、授予的權限,以及有效的申請者和核准者。
在表格中,找到要撤銷授權的權利,然後按一下該列中的「更多選項」。
按一下「撤銷所有授權」。
以程式輔助方式撤銷授權
gcloud
這個指令會撤銷有效授權。gcloud pam grants revoke
使用下方的任何指令資料之前,請先替換以下項目:
GRANT_ID:要撤銷的授權 ID。 您可以透過 查看授權來擷取 ID。ENTITLEMENT_ID:授權所屬的權利 ID。REVOKE_REASON:說明授予項目遭撤銷的原因。RESOURCE_TYPE:選用。權利所屬的資源類型。請使用organization、folder或project值。RESOURCE_ID:與RESOURCE_TYPE搭配使用。要管理權限的 Google Cloud專案、資料夾或機構的 ID。專案 ID 為英數字串,例如my-project。 資料夾和機構 ID 是數字,例如123456789012。
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud pam grants revoke \ GRANT_ID \ --entitlement=ENTITLEMENT_ID \ --reason="REVOKE_REASON" \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam grants revoke ` GRANT_ID ` --entitlement=ENTITLEMENT_ID ` --reason="REVOKE_REASON" ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam grants revoke ^ GRANT_ID ^ --entitlement=ENTITLEMENT_ID ^ --reason="REVOKE_REASON" ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
您應該會收到類似以下的回應:
auditTrail:
accessGrantTime: '2024-04-05T00:29:16.703069535Z'
accessRemoveTime: '2024-04-05T00:29:55.815041079Z'
createTime: '2024-04-05T00:27:43.822053968Z'
justification:
unstructuredJustification: Renaming a file to mitigate issue #312
name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID
privilegedAccess:
gcpIamAccess:
resource: //cloudresourcemanager.googleapis.com/projects/my-project
resourceType: cloudresourcemanager.googleapis.com/Project
roleBindings:
- role: roles/storage.admin
requestedDuration: 2700s
requester: cruz@example.com
state: REVOKED
timeline:
events:
- eventTime: '2024-04-05T00:27:44.014277946Z'
requested:
expireTime: '2024-04-06T00:27:44.014277946Z'
- approved:
actor: alex@example.com
reason: Access allowed under existing policy
eventTime: '2024-04-05T00:29:14.921828714Z'
- eventTime: '2024-04-05T00:29:14.921763008Z'
scheduled:
scheduledActivationTime: '2024-04-05T00:29:14.921763008Z'
- activated: {}
eventTime: '2024-04-05T00:29:16.703069535Z'
- eventTime: '2024-04-05T00:29:55.815041079Z'
revoked:
actor: alex@example.com
reason: Revoking due to new access policy
REST
Privileged Access Manager API 的 revokeGrant 方法會撤銷有效授權。
使用任何要求資料之前,請先替換以下項目:
SCOPE:權利所在的機構、資料夾或專案,格式為organizations/ORGANIZATION_ID、folders/FOLDER_ID或projects/PROJECT_ID。專案 ID 為英數字串,例如my-project。資料夾和機構 ID 為數字,例如123456789012。ENTITLEMENT_ID:授權所屬的權利 ID。GRANT_ID:要撤銷的授權 ID。 您可以透過 查看授權來擷取 ID。REVOKE_REASON:授予項目遭撤銷的原因。
HTTP 方法和網址:
POST https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID:revoke
JSON 要求主體:
{
"reason": "REVOKE_REASON"
}
如要傳送要求,請展開以下其中一個選項:
您應該會收到如下的 JSON 回應:
{
"name": "projects/my-project/locations/global/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1.OperationMetadata",
"createTime": "2024-03-06T23:07:48.716396505Z",
"target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID",
"verb": "update",
"requestedCancellation": false,
"apiVersion": "v1"
},
"done": false
}
如要查看撤銷作業的進度,可以將 GET 要求傳送至下列端點:
https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/operations/OPERATION_ID
傳送 GET 要求至下列端點,列出所有作業:
https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/operations