撤銷員工身分聯盟使用者工作階段

本指南說明如何撤銷工作人員使用者 (也稱為工作人員主體) 的有效工作階段和短期憑證。

撤銷工作階段會立即讓有效工作階段和憑證失效。 不過,如果使用者在身分識別提供者 (IdP) 中仍處於活躍狀態,系統就不會刪除使用者中繼資料或資源,也不會禁止後續登入。

在下列情況下,撤銷工作階段非常實用:

  • 懷疑憑證遭盜用:您懷疑使用者的有效工作階段或憑證遭盜用,必須立即切斷存取權。
  • 離職或角色異動:使用者離職或角色異動時,您必須立即終止其存取權,同時刪除身分或更新群組。由於刪除使用者會啟動為期 30 天的非同步軟刪除程序,因此請撤銷工作階段,立即終止使用者的有效存取權。
  • 立即強制執行政策:您在 IdP 中修改了使用者權限或群組成員資格,並希望使用者立即重新驗證身分,以便更新工作階段屬性和群組成員資格。

事前準備

安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:

gcloud init

如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。

必要的角色

如要取得撤銷工作團隊使用者工作階段所需的權限,請要求管理員授予您組織或工作團隊集區的工作團隊集區管理員 (roles/iam.workforcePoolAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這個預先定義的角色具備 iam.googleapis.com/workforcePoolSubjects.revokeSessions 權限,可撤銷員工使用者工作階段。

您或許還可透過自訂角色或其他預先定義的角色取得這項權限。

撤銷使用者工作階段

撤銷員工使用者的工作階段後,所有運作中的Google Cloud 控制台工作階段、工作階段 Cookie、短期 OAuth 2.0 存取權杖,以及為該使用者主體核發的憑證都會立即失效,使用者必須向身分識別提供者 (IdP) 重新驗證身分。

如要撤銷員工使用者的工作階段,請按照下列步驟操作:

gcloud

gcloud iam workforce-pools subjects revoke-sessions 指令會撤銷工作團隊集區主體的有效工作階段和短期憑證。

使用下列任何指令資料之前,請先替換以下項目:

  • SUBJECT_ID:要撤銷工作階段的使用者主體 ID。如要從 Cloud 稽核記錄或 IAM 允許政策擷取使用者身分,主體 ID 是使用者主體 ID 的最後一段,格式如下: principal://iam.googleapis.com/locations/LOCATION/workforcePools/WORKFORCE_POOL_ID/subject/SUBJECT_ID。
  • WORKFORCE_POOL_ID:工作團隊集區 ID。

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud iam workforce-pools subjects revoke-sessions \
    SUBJECT_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global

Windows (PowerShell)

gcloud iam workforce-pools subjects revoke-sessions `
    SUBJECT_ID `
    --workforce-pool=WORKFORCE_POOL_ID `
    --location=global

Windows (cmd.exe)

gcloud iam workforce-pools subjects revoke-sessions ^
    SUBJECT_ID ^
    --workforce-pool=WORKFORCE_POOL_ID ^
    --location=global

REST

locations.workforcePools.subjects.revokeSessions 方法會撤銷工作人員集區主體的有效工作階段和短期憑證。

使用任何要求資料之前,請先修改下列項目的值:

  • SUBJECT_ID:要撤銷工作階段的使用者主體 ID。如要從 Cloud 稽核記錄或 IAM 允許政策擷取使用者身分,主體 ID 是使用者主體 ID 的最後一段,格式如下: principal://iam.googleapis.com/locations/LOCATION/workforcePools/WORKFORCE_POOL_ID/subject/SUBJECT_ID。
  • WORKFORCE_POOL_ID:工作團隊集區 ID。

HTTP 方法和網址:

POST https://iam.googleapis.com/v1/locations/global/workforcePools/WORKFORCE_POOL_ID/subjects/SUBJECT_ID:revokeSessions

請展開以下其中一個選項,以傳送要求:

如果要求成功,回應主體會是空白。

{}

後續步驟