本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立 Amazon Verified Permissions OIDC 身分來源
下列程序會將身分來源新增至現有的政策存放區。
您也可以在 Verified Permissions 主控台中建立新的政策存放區時建立身分來源。在此程序中,您可以將身分來源字符中的宣告自動匯入實體屬性。選擇引導式設定或使用 API Gateway 和身分提供者設定選項。這些選項也會建立初始政策。
注意
除非您已建立政策存放區,否則左側導覽窗格中無法使用身分來源。您建立的身分來源與目前的政策存放區相關聯。
當您在 中建立具有 create-identity-source 的身分來源, AWS CLI 或在 Verified Permissions API 中建立 CreateIdentitySource 時,可以排除委託人實體類型。不過,空白實體類型會建立實體類型為 的身分來源AWS::Cognito
。此實體名稱與政策存放區結構描述不相容。若要將 Amazon Cognito 身分與您的政策存放區結構描述整合,您必須將主體實體類型設定為支援的政策存放區實體。
- AWS Management Console
-
建立 OpenID Connect (OIDC) 身分來源
開啟 Verified Permissions 主控台
。選擇您的政策存放區。 -
在左側導覽窗格中,選擇身分來源。
-
選擇建立身分來源。
-
選擇外部 OIDC 提供者。
-
在發行者 URL 中,輸入 OIDC 發行者的 URL。這是提供服務端點,可提供授權伺服器、簽署金鑰,以及有關提供者的其他資訊,例如
https://auth.example.com
。您的發行者 URL 必須在 託管 OIDC 探索文件/.well-known/openid-configuration
。 -
在字符類型中,選擇您希望應用程式提交以進行授權的 OIDC JWT 類型。如需詳細資訊,請參閱將 OIDC 權杖映射至結構描述。
-
在將字符宣告映射至結構描述實體中,選擇身分來源的使用者實體和使用者宣告。使用者實體是政策存放區中的實體,您想要從 OIDC 供應商參考使用者。使用者宣告是一種宣告,通常是來自您的 ID 或存取權杖的
sub
,其中包含要評估之實體的唯一識別符。來自已連線 OIDC IdP 的身分將映射至選取的委託人類型。 -
(選用) 在將字符宣告映射至結構描述實體中,選擇身分來源的群組實體和群組宣告。群組實體是使用者實體的父
項。群組宣告會映射到此實體。群組宣告是一種宣告,通常來自您的 ID 或存取權杖 groups
,其中包含要評估之實體的字串、JSON 或以空格分隔的使用者群組名稱字串。來自已連線 OIDC IdP 的身分將映射至選取的委託人類型。 -
在驗證 - 選用中,輸入您希望政策存放區在授權請求中接受的用戶端 IDs 或對象 URLs,如果有的話。
-
選擇建立身分來源。
(選用) 如果您的政策存放區有結構描述,在您可以參考從 Cedar 政策中的身分或存取權杖擷取的屬性之前,您必須更新結構描述,讓 Cedar 了解您的身分來源建立的主體類型。除了結構描述之外,還必須包含您要在 Cedar 政策中參考的屬性。如需將 OIDC 字符屬性映射至 Cedar 主體屬性的詳細資訊,請參閱 將 OIDC 權杖映射至結構描述。
建立使用字符資訊進行授權決策的政策。如需詳細資訊,請參閱建立 Amazon Verified Permissions 靜態政策。
現在您已建立身分來源、更新結構描述和建立政策,請使用
IsAuthorizedWithToken
讓 Verified Permissions 做出授權決策。如需詳細資訊,請參閱《Amazon Verified Permissions API 參考指南》中的 IsAuthorizedWithToken。 - AWS CLI
-
建立 OIDC 身分來源
您可以使用 CreateIdentitySource 操作來建立身分來源。下列範例會建立身分來源,從 OIDC 身分提供者 (IdP) 存取已驗證的身分。
建立
config.txt
檔案,其中包含 OIDC IdP 的下列詳細資訊,以供create-identity-source
命令的--configuration
參數使用。{ "openIdConnectConfiguration": { "issuer": "https://auth.example.com", "tokenSelection": { "identityTokenOnly": { "clientIds":["1example23456789"], "principalIdClaim": "sub" }, }, "entityIdPrefix": "MyOIDCProvider", "groupConfiguration": { "groupClaim": "groups", "groupEntityType": "MyCorp::UserGroup" } } }
執行下列命令來建立 OIDC 身分來源。
$
aws verifiedpermissions create-identity-source \ --configuration file://config.txt \ --principal-entity-type "User" \ --policy-store-id 123456789012
{ "createdDate": "2023-05-19T20:30:28.214829+00:00", "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
(選用) 如果您的政策存放區有結構描述,在您可以參考從 Cedar 政策中的身分或存取權杖擷取的屬性之前,您必須更新結構描述,讓 Cedar 了解您的身分來源建立的主體類型。除了結構描述之外,還必須包含您要在 Cedar 政策中參考的屬性。如需將 OIDC 字符屬性映射至 Cedar 主體屬性的詳細資訊,請參閱 將 OIDC 權杖映射至結構描述。
建立使用字符資訊進行授權決策的政策。如需詳細資訊,請參閱建立 Amazon Verified Permissions 靜態政策。
現在您已建立身分來源、更新結構描述和建立政策,請使用
IsAuthorizedWithToken
讓 Verified Permissions 做出授權決策。如需詳細資訊,請參閱《Amazon Verified Permissions API 參考指南》中的 IsAuthorizedWithToken。