權杖總覽

本文件和「權杖類型」文件涵蓋 Cloud de Confiance by S3NS 用於驗證和授權的多個權杖。這些範例適用於想瞭解權杖式驗證運作方式,或想實作驗證機制但不想使用 Cloud 用戶端程式庫的使用者。

使用 Cloud 用戶端程式庫、 Cloud de Confiance 控制台或 Google Cloud CLI 與 API 互動時,您不需要瞭解這項資訊,系統會自動為您選取正確的權杖類型,並取得及重新整理這些權杖。 Cloud de Confiance by S3NS

使用者驗證

當真人使用者與 Cloud de Confiance by S3NS互動時,不會直接與Cloud de Confiance by S3NS API 互動。而是使用用戶端代表他們執行動作。 他們使用的用戶端可能是網頁應用程式、桌面應用程式,或是 Google Cloud CLI 或 curl 等公用程式。

由於要求是由用戶端提出,而非使用者,因此 Cloud de Confiance by S3NS 無法直接向使用者要求身分資訊,以檢查他們是否有權使用 API。而是透過用戶端以權杖形式傳遞給 API,且每項 API 要求都會包含這個權杖。

使用者驗證權杖會編碼下列資訊:

  • 使用者的身分。

  • 用戶端的 ID。

  • 確保用戶端可代表使用者執行動作。

驗證使用者和授權用戶端時,會涉及下列各方:

  • 使用者。

  • 代表使用者執行的用戶端。

  • 授權伺服器,Google API 會透過這個伺服器驗證用戶端。

  • 用戶端互動的 Cloud de Confiance by S3NS API。

用戶端無法自行核發權杖,而是必須與授權伺服器搭配運作,才能執行下列操作:

  1. 驗證使用者。

  2. 驗證用戶端。

  3. 授權用戶端代表使用者執行動作。

  4. 向用戶端核發權杖。

使用者透過用戶端驗證的關係圖

透過員工身分聯盟和外部身分識別提供者驗證身分的使用者,就是員工身分集區主體。主體具有類似下列的主體 ID:

principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/raha@altostrat.com

工作負載驗證

部分用戶端需要代表自己與 Google API 互動。舉例來說,排定的工作可能需要從 BigQuery 或 Cloud Storage 讀取資料,而不需要任何使用者參與。

自行代表無人值守的用戶端執行的動作稱為工作負載。與使用者驗證不同,工作負載驗證會將驗證使用者和授權用戶端合併為單一步驟。因此,工作負載驗證權杖只會編碼用戶端的 ID。

工作負載驗證和授權涉及下列各方:

  • 工作負載會同時做為用戶端和使用者,並代表自己。

  • 授權伺服器,Google API 會透過這個伺服器驗證用戶端。

  • 用戶端互動的 Cloud de Confiance by S3NS API。

如要存取 Cloud de Confiance by S3NS API,用戶端必須與授權伺服器搭配運作,才能執行下列操作:

  1. 驗證用戶端。

  2. 授權用戶端。

  3. 向用戶端核發權杖。

工作負載透過用戶端驗證的關係圖

經過驗證的工作負載也稱為主體,但工作負載使用的主要 ID 與使用者不同。

使用服務帳戶驗證的工作負載是服務帳戶主體。主體的主體 ID 類似於下列 ID:

serviceAccount:my-service-account@my-project.s3ns.iam.gserviceaccount.com

使用 Workload Identity 聯盟驗證的工作負載是工作負載身分識別集區主體。主體的主體 ID 類似於下列 ID:

principal://iam.googleapis.com/projects/PROJECT_NAME/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE

後續步驟

請參閱權杖類型