選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 移至生產環境 AWS CloudFormation

焦點模式
使用 移至生產環境 AWS CloudFormation - Amazon Verified Permissions

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

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

API 連結政策存放區是快速建置 API Gateway API 授權模型的一種方式。它們旨在做為您應用程式授權元件的測試環境。建立測試政策存放區之後,請花時間完善政策、結構描述和 Lambda 授權方。

您可以調整 API 的架構,需要對政策存放區結構描述和政策進行同等調整。API 連結政策存放區不會從 API 架構自動更新其結構描述 – 驗證許可只會在您建立政策存放區時輪詢 API。如果您的 API 有足夠變更,您可能需要使用新的政策存放區重複此程序。

當您的應用程式和授權模型準備好部署到生產環境時,請整合您開發的 API 連結政策存放區與自動化程序。最佳實務是,建議您將政策存放區結構描述和政策匯出到您可以部署到其他 AWS 帳戶 和 的 AWS CloudFormation 範本 AWS 區域。

API 連結政策存放區程序的結果是初始政策存放區和 Lambda 授權方。Lambda 授權方有數個相依資源。驗證許可會在自動產生的 CloudFormation 堆疊中部署這些資源。若要部署到生產環境,您必須將政策存放區和 Lambda 授權方資源收集到範本中。API 連結政策存放區是由下列資源組成:

  1. AWS::VerifiedPermissions::PolicyStore: 將您的結構描述複製到 SchemaDefinition 物件。逸出"字元為 \"

  2. AWS::VerifiedPermissions::IdentitySource:從您的測試政策存放區複製 GetIdentitySource 輸出的值,並視需要修改。

  3. 一或多個 AWS::VerifiedPermissions::Policy: 將您的政策陳述式複製到 Definition 物件。逸出"字元為 \"

  4. AWS::Lambda::FunctionAWS:IAM::RoleAWS:IAM:PolicyAWS::ApiGateway::AuthorizerAWS::Lambda::Permission

下列範本是範例政策存放區。您可以將 Lambda 授權方資源從現有堆疊附加至此範本。

{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyExamplePolicyStore": { "Type": "AWS::VerifiedPermissions::PolicyStore", "Properties": { "ValidationSettings": { "Mode": "STRICT" }, "Description": "ApiGateway: PetStore/test", "Schema": { "CedarJson": "{\"PetStore\":{\"actions\":{\"get /pets\":{\"appliesTo\":{\"principalTypes\":[\"User\"],\"resourceTypes\":[\"Application\"],\"context\":{\"type\":\"Record\",\"attributes\":{}}}},\"get /\":{\"appliesTo\":{\"principalTypes\":[\"User\"],\"resourceTypes\":[\"Application\"],\"context\":{\"type\":\"Record\",\"attributes\":{}}}},\"get /pets/{petId}\":{\"appliesTo\":{\"context\":{\"type\":\"Record\",\"attributes\":{}},\"resourceTypes\":[\"Application\"],\"principalTypes\":[\"User\"]}},\"post /pets\":{\"appliesTo\":{\"principalTypes\":[\"User\"],\"resourceTypes\":[\"Application\"],\"context\":{\"type\":\"Record\",\"attributes\":{}}}}},\"entityTypes\":{\"Application\":{\"shape\":{\"type\":\"Record\",\"attributes\":{}}},\"User\":{\"memberOfTypes\":[\"UserGroup\"],\"shape\":{\"attributes\":{},\"type\":\"Record\"}},\"UserGroup\":{\"shape\":{\"type\":\"Record\",\"attributes\":{}}}}}}" } } }, "MyExamplePolicy": { "Type": "AWS::VerifiedPermissions::Policy", "Properties": { "Definition": { "Static": { "Description": "Policy defining permissions for testgroup cognito group", "Statement": "permit(\nprincipal in PetStore::UserGroup::\"us-east-1_EXAMPLE|testgroup\",\naction in [\n PetStore::Action::\"get /\",\n PetStore::Action::\"post /pets\",\n PetStore::Action::\"get /pets\",\n PetStore::Action::\"get /pets/{petId}\"\n],\nresource);" } }, "PolicyStoreId": { "Ref": "MyExamplePolicyStore" } }, "DependsOn": [ "MyExamplePolicyStore" ] }, "MyExampleIdentitySource": { "Type": "AWS::VerifiedPermissions::IdentitySource", "Properties": { "Configuration": { "CognitoUserPoolConfiguration": { "ClientIds": [ "1example23456789" ], "GroupConfiguration": { "GroupEntityType": "PetStore::UserGroup" }, "UserPoolArn": "arn:aws:cognito-idp:us-east-1:123456789012:userpool/us-east-1_EXAMPLE" } }, "PolicyStoreId": { "Ref": "MyExamplePolicyStore" }, "PrincipalEntityType": "PetStore::User" }, "DependsOn": [ "MyExamplePolicyStore" ] } } }
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。