IAM Identity Center IAM Identity Center 的資源型政策範例 - AWS IAM Identity Center

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

IAM Identity Center IAM Identity Center 的資源型政策範例

使用 IAM Identity Center 並使用 OAuth 2.0 的每個應用程式都需要資源型政策。應用程式可以是客戶受管或受 AWS 管。必要的資源型政策稱為應用程式政策 (或 APIs中的 ActorPolicy),定義哪些 IAM 主體有權呼叫 IAM 身分驗證方法 API 動作,例如 CreateTokenWithIAM。IAM 身分驗證方法允許 IAM 主體,例如 IAM 角色或服務 AWS ,透過在 /token?aws_iam=t 端點提供 IAM 憑證來請求或管理存取權杖,以向 IAM Identity Center OIDC 服務進行身分驗證。

應用程式政策會管理發出權杖的操作 (CreateTokenWithIAM)。此政策也會控管僅限 AWS 受管應用程式用於驗證權杖 (IntrospectTokenWithIAM) 和撤銷權杖 () 的僅限許可動作RevokeTokenWithIAM。對於客戶受管應用程式,您可以透過指定有權呼叫 的 IAM 主體來設定此政策CreateTokenWithIAM。當授權委託人呼叫此 API 動作時,委託人會收到應用程式的存取和重新整理權杖。

如果您使用 IAM Identity Center 主控台來設定受信任身分傳播的客戶受管應用程式,請參閱設定客戶受管 OAuth 2.0 應用程式中的步驟 4,以取得如何設定應用程式政策的資訊。如需範例政策,請參閱本主題範例政策:允許 IAM 角色建立存取和重新整理權杖稍後的 。

政策要求

政策必須符合下列要求:

  • 政策必須包含設定為 "2012-10-17" 的Version 元素。

  • 政策必須至少包含一個 Statement 元素。

  • 每個政策Statement必須包含下列元素:EffectActionPrincipalResource

政策元素

政策必須包含下列元素:

版本

指定政策文件版本。將版本設定為 2012-10-17 (最新版本)。

陳述式

包含政策 Statements。政策必須至少包含一個 Statement

每個政策Statement都包含下列元素。

Effect

(必要) 決定是允許還是拒絕政策陳述式中的許可。有效值為 AllowDeny

Principal

(必要) 主體是取得政策陳述式中指定許可的身分。您可以指定 IAM 角色 AWS 或服務主體。

動作

(必要) 要允許或拒絕的 IAM Identity Center OIDC 服務 API 操作。有效動作包括:

  • sso-oauth:CreateTokenWithIAM:此動作對應於 CreateTokenWithIAM API 操作,授予許可,以建立和傳回使用 AWS 服務角色或使用者等任何 IAM 實體驗證的授權用戶端應用程式的存取和重新整理權杖。這些字符可能包含指定許可的已定義範圍,例如 read:profilewrite:data

  • sso-oauth:IntrospectTokenWithIAM 【僅限許可】:准許驗證和擷取作用中 OAuth 2.0 存取權杖和重新整理權杖的相關資訊,包括其相關聯的範圍和許可。此許可僅供 AWS 受管應用程式使用,不會記錄在 IAM Identity Center OIDC API 參考中。

  • RevokeTokenWithIAM 【僅限許可】:授予撤銷 OAuth 2.0 存取權杖和重新整理權杖的許可,使其在正常過期之前失效。此許可僅供 AWS 受管應用程式使用,不會記錄在 IAM Identity Center OIDC API 參考中。

資源

(必要) 在此政策中, Resource元素的值為 "*",這表示「此應用程式」。

如需 AWS 政策語法的詳細資訊,請參閱《AWS IAM 使用者指南》中的 IAM 政策參考

範例政策:允許 IAM 角色建立存取和重新整理權杖

下列許可政策會將許可授予工作負載所擔任的 ExampleAppClientRoleIAM 角色 ,以建立和傳回存取權和重新整理權杖。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRoleToCreateTokens", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleAppClientRole" }, "Action": "sso-oauth:CreateTokenWithIAM", "Resource": "*" } ] }