アクセスポイントポリシーを追加または編集するには - Amazon S3 on Outposts

アクセスポイントポリシーを追加または編集するには

アクセスポイントには、そのアクセスポイントを介して行われるすべてのリクエストに Amazon S3 on Outposts が適用する個別の許可とネットワークコントロールがあります。各アクセスポイントは、基になるバケットにアタッチされたバケットポリシーと連動して機能するカスタマイズされたアクセスポイントポリシーを適用します。詳細については、「アクセスポイント」を参照してください。

次のトピックでは、AWS Management Console、AWS Command Line Interface (AWS CLI)、および AWS SDK for Java を使用して、S3 on Outposts アクセスポイントのアクセスポイントポリシーを追加または編集する方法について説明します。

  1. https://console.aws.amazon.com/s3/ で Amazon S3 コンソールを開きます。

  2. 左のナビゲーションペインで、[Outposts buckets] (Outposts バケット) を選択します。

  3. アクセスポイントポリシーを編集する Outposts バケットを選択します。

  4. [Outposts アクセスポイント] タブを選択します。

  5. [Outposts access points] (Outposts アクセスポイント) セクションで、ポリシーを編集するアクセスポイントを選択し、[Edit policy] (ポリシーの編集) を選択します。

  6. [Outposts access point policy] (Outposts アクセスポイントポリシー) セクションで、ポリシーを追加または編集します 。詳細については、「S3 on Outposts で IAM を設定する」を参照してください。

次の AWS CLI の例では、Outposts アクセスポイントにポリシーを配置します。

  1. 次のアクセスポイントポリシーを JSON ファイルに保存します。この例では、ファイル名は appolicy1.json です。user input placeholders を、ユーザー自身の情報に置き換えます。

    { "Version":"2012-10-17", "Id":"exampleAccessPointPolicy", "Statement":[ { "Sid":"st1", "Effect":"Allow", "Principal":{ "AWS":"123456789012" }, "Action":"s3-outposts:*", "Resource":"arn:aws:s3-outposts:region:123456789012:outpost/op-01ac5d28a6a232904/accesspoint/example-outposts-access-point } ] }
  2. put-access-point-policy CLI コマンドの一部として JSON ファイルを送信します。user input placeholders を、ユーザー自身の情報に置き換えます。

    aws s3control put-access-point-policy --account-id 123456789012 --name arn:aws:s3-outposts:region:123456789012:outpost/op-01ac5d28a6a232904/accesspoint/example-outposts-access-point --policy file://appolicy1.json

次の SDK for Java の例では、Outposts アクセスポイントにポリシーを配置します。

import com.amazonaws.services.s3control.model.*; public void putAccessPointPolicy(String accessPointArn) { String policy = "{\"Version\":\"2012-10-17\",\"Id\":\"testAccessPointPolicy\",\"Statement\":[{\"Sid\":\"st1\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"" + AccountId + "\"},\"Action\":\"s3-outposts:*\",\"Resource\":\"" + accessPointArn + "\"}]}"; PutAccessPointPolicyRequest reqPutAccessPointPolicy = new PutAccessPointPolicyRequest() .withAccountId(AccountId) .withName(accessPointArn) .withPolicy(policy); PutAccessPointPolicyResult respPutAccessPointPolicy = s3ControlClient.putAccessPointPolicy(reqPutAccessPointPolicy); System.out.printf("PutAccessPointPolicy Response: %s%n", respPutAccessPointPolicy.toString()); printWriter.printf("PutAccessPointPolicy Response: %s%n", respPutAccessPointPolicy.toString()); }