Amazon Verified Permissions テンプレートにリンクされたポリシーの作成 - Amazon Verified Permissions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Verified Permissions テンプレートにリンクされたポリシーの作成

テンプレートにリンクされたポリシー、またはポリシーテンプレートに基づくポリシーは、、 AWS Management Console AWS CLI、または を使用して作成できます AWS SDKs。テンプレートにリンクされたポリシーは、ポリシーテンプレートにリンクされたままになります。ポリシーテンプレートでポリシーステートメントを変更すると、そのテンプレートにリンクされたすべてのポリシーは、その時点以降のすべての承認決定に対して新しいステートメントを自動的に使用します。

テンプレートにリンクされたポリシーの例については、「」を参照してくださいAmazon Verified Permissions のテンプレートにリンクされたポリシーの例

AWS Management Console
ポリシーテンプレートをインスタンス化してテンプレートにリンクされたポリシーを作成するには
  1. Verified Permissions コンソール を開きます。ポリシーストアを選択します。

  2. 左側のナビゲーションペインで、[ポリシー] を選択します。

  3. [ポリシーを作成] を選択し、[テンプレートにリンクされたポリシーを作成] を選択します。

  4. 使用するポリシーテンプレートの横にあるラジオボタンを選択して、[次へ] を選択します。

  5. テンプレートにリンクされたポリシーのこの特定のインスタンスに使用するプリンシパルリソースを入力します。指定した値は [ポリシーステートメントのプレビュー] フィールドに表示されます。

    注記

    プリンシパルリソースの値は、静的ポリシーと同じ形式にする必要があります。例えば、プリンシパルの AdminUsers グループを指定するには、Group::"AdminUsers" と入力します。AdminUsers を入力すると、検証エラーが表示されます。

  6. [テンプレートにリンクされたポリシーを作成] を選択します。

    テンプレートにリンクされた新しいポリシーが [ポリシー] の下に表示されます。

AWS CLI
ポリシーテンプレートをインスタンス化してテンプレートにリンクされたポリシーを作成するには

既存のポリシーテンプレートを参照し、テンプレートで使用されるすべてのプレースホルダの値を指定するテンプレートリンクポリシーを作成できます。

次の例では、次のステートメントがあるテンプレートを使用する、テンプレートにリンクされるポリシーを作成しています。

permit( principal in ?principal, action == PhotoFlash::Action::"view", resource == PhotoFlash::Photo::"VacationPhoto94.jpg" );

また、次の definition.txt ファイルを使用して definition パラメータの値を指定します。

{ "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111", "principal": { "entityType": "PhotoFlash::User", "entityId": "alice" } } }

出力には、テンプレートから取得したリソースと、定義パラメータから取得したプリンシパルの両方が表示されます。

$ aws verifiedpermissions create-policy \ --definition file://definition.txt --policy-store-id PSEXAMPLEabcdefg111111 { "createdDate": "2023-05-22T18:57:53.298278+00:00", "lastUpdatedDate": "2023-05-22T18:57:53.298278+00:00", "policyId": "TPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "TEMPLATELINKED", "principal": { "entityId": "alice", "entityType": "PhotoFlash::User" }, "resource": { "entityId": "VacationPhoto94.jpg", "entityType": "PhotoFlash::Photo" } }