本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立 Amazon Verified Permissions Amazon Cognito 身分來源
下列程序會將身分來源新增至現有的政策存放區。
您也可以在 Verified Permissions 主控台中建立新的政策存放區時建立身分來源。在此程序中,您可以將身分來源字符中的宣告自動匯入實體屬性。選擇引導式設定或使用 API Gateway 和身分提供者設定選項。這些選項也會建立初始政策。
在您建立政策存放區之前,左側導覽窗格中無法使用身分來源。您建立的身分來源與目前的政策存放區相關聯。
當您在 中建立具有 create-identity-source 的身分來源, AWS CLI 或在 Verified Permissions API 中建立 CreateIdentitySource 時,可以省略委託人實體類型。不過,空白實體類型會建立實體類型為 的身分來源AWS::Cognito
。此實體名稱與政策存放區結構描述不相容。若要將 Amazon Cognito 身分與您的政策存放區結構描述整合,您必須將主體實體類型設定為支援的政策存放區實體。
- AWS Management Console
-
建立 Amazon Cognito 使用者集區身分來源
開啟 Verified Permissions 主控台。選擇您的政策存放區。
-
在左側導覽窗格中,選擇身分來源。
-
選擇建立身分來源。
-
在 Cognito 使用者集區詳細資訊中,選取 , AWS 區域 然後輸入身分來源的使用者集區 ID。
-
在委託人組態中,針對委託人類型,從此來源選擇委託人的實體類型。來自已連線 Amazon Cognito 使用者集區的身分將映射至選取的委託人類型。
-
在群組組態中,如果您想要對應使用者集區cognito:groups
宣告,請選取使用 Cognito 群組。選擇做為委託人類型父項的實體類型。
-
在用戶端應用程式驗證中,選擇是否要驗證用戶端應用程式 IDs。
-
選擇建立身分來源。
(選用) 如果您的政策存放區有結構描述,在您可以參考從 Cedar 政策中的身分或存取權杖擷取的屬性之前,您必須先更新結構描述,讓 Cedar 了解您的身分來源建立的主體類型。除了結構描述之外,還必須包含您要在 Cedar 政策中參考的屬性。如需將 Amazon Cognito 權杖屬性映射至 Cedar 主體屬性的詳細資訊,請參閱 將 Amazon Cognito 權杖映射至結構描述。
當您建立 API 連結政策存放區,或在建立政策存放區時使用設定 API Gateway 和身分提供者時,Verified Permissions 會查詢您的使用者集區是否有使用者屬性,並建立結構描述,其中您的主體類型會填入使用者集區屬性。
建立使用字符資訊進行授權決策的政策。如需詳細資訊,請參閱建立 Amazon Verified Permissions 靜態政策。
現在您已建立身分來源、更新結構描述和建立政策,請使用 IsAuthorizedWithToken
讓 Verified Permissions 進行授權決策。如需詳細資訊,請參閱《Amazon Verified Permissions API 參考指南》中的 IsAuthorizedWithToken。
- AWS CLI
-
建立 Amazon Cognito 使用者集區身分來源
您可以使用 CreateIdentitySource 操作來建立身分來源。下列範例會建立身分來源,從 Amazon Cognito 使用者集區存取已驗證的身分。
建立config.txt
檔案,其中包含 Amazon Cognito 使用者集區的下列詳細資訊,以供 create-identity-source
命令中的 --configuration
參數使用。
{
"cognitoUserPoolConfiguration": {
"userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5",
"clientIds":["a1b2c3d4e5f6g7h8i9j0kalbmc"],
"groupConfiguration": {
"groupEntityType": "MyCorp::UserGroup"
}
}
}
執行下列命令來建立 Amazon Cognito 身分來源。
$
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 政策中參考的屬性。如需將 Amazon Cognito 權杖屬性映射至 Cedar 主體屬性的詳細資訊,請參閱 將 Amazon Cognito 權杖映射至結構描述。
當您建立 API 連結政策存放區,或在建立政策存放區時使用設定 API Gateway 和身分提供者時,Verified Permissions 會查詢您的使用者集區是否有使用者屬性,並建立結構描述,其中您的主體類型會填入使用者集區屬性。
建立使用字符資訊進行授權決策的政策。如需詳細資訊,請參閱建立 Amazon Verified Permissions 靜態政策。
現在您已建立身分來源、更新結構描述和建立政策,請使用 IsAuthorizedWithToken
讓 Verified Permissions 進行授權決策。如需詳細資訊,請參閱《Amazon Verified Permissions API 參考指南》中的 IsAuthorizedWithToken。
如需在 Verified Permissions 中使用已驗證使用者的 Amazon Cognito 存取和身分字符的詳細資訊,請參閱《Amazon Amazon Cognito Permissions 授權。