CloudTrail Lake クエリ結果の Amazon S3 バケットポリシー - AWS CloudTrail

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

CloudTrail Lake クエリ結果の Amazon S3 バケットポリシー

デフォルトでは、Amazon S3 バケットとオブジェクトはプライベートです。リソース所有者 (バケットを作成した AWS アカウント) のみが、バケットとそれに含まれるオブジェクトにアクセスできます。リソース所有者は、アクセスポリシーを記述することで他のリソースおよびユーザーにアクセス権限を付与することができます。

S3 バケットに CloudTrail Lake ファイルを配信するためには、CloudTrail に必要なアクセス権限がある必要があり、[Requester Pays] (リクエスタ支払い) バケットとして設定することはできません。

CloudTrail は、ポリシーに以下のフィールドを追加します。

  • 許可された SID。

  • バケット名。

  • CloudTrail のサービスプリンシパル名。

セキュリティのベストプラクティスとして、aws:SourceArn 条件キーを Amazon S3 バケットポリシーに追加します。IAM グローバル条件キー aws:SourceArn は、CloudTrail がイベントデータストアに対してのみ S3 バケットに書き込めるようにするのに役立ちます。

次のポリシーでは、CloudTrail がサポートされている AWS リージョン からクエリ結果をバケットに書き込むことを許可します。myBucketNamemyAccountIdmyQueryRunningRegion を、ご使用の設定に適した値に置き換えてます。myAccountID は CloudTrail で使われている AWS アカウント ID であり、S3 バケットの AWS アカウント ID とは異なる場合があります。

注記

バケットポリシーが KMS キーに関するステートメントを含む場合には、完全修飾 KMS キー ARN を使用することをお勧めします。代わりに KMS キーエイリアスを使用する場合、AWS KMS はリクエスタのアカウント内でキーを解決します。この動作により、バケット所有者ではなく、リクエスタに属する KMS キーでデータが暗号化される可能性があります。

これが組織のイベントデータストアである場合は、そのイベントデータストアの ARN に、管理アカウントの AWS アカウント ID が含まれている必要があります。これは、管理アカウントがすべての組織リソースの所有権を保持しているためです。

S3 バケットポリシー

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailLake1", "Effect": "Allow", "Principal": {"Service": "cloudtrail.amazonaws.com"}, "Action": [ "s3:PutObject*", "s3:Abort*" ], "Resource": [ "arn:aws:s3:::myBucketName", "arn:aws:s3:::myBucketName/*" ], "Condition": { "StringLike": { "aws:sourceAccount": "myAccountID", "aws:sourceArn": "arn:aws:cloudtrail:myQueryRunningRegion:myAccountID:eventdatastore/*" } } }, { "Sid": "AWSCloudTrailLake2", "Effect": "Allow", "Principal": {"Service":"cloudtrail.amazonaws.com"}, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::myBucketName", "Condition": { "StringLike": { "aws:sourceAccount": "myAccountID", "aws:sourceArn": "arn:aws:cloudtrail:myQueryRunningRegion:myAccountID:eventdatastore/*" } } } ] }

CloudTrail Lake クエリ結果の既存のバケットを指定する

CloudTrail Lake クエリ結果配信のストレージの場所として既存の S3 バケットを指定した場合は、CloudTrail がクエリ結果をバケットに配信できるようにするポリシーをバケットにアタッチする必要があります。

注記

ベストプラクティスとして、CloudTrail Lake クエリ結果専用 S3 バケットを使用します。

必要な CloudTrail ポリシーを Amazon S3 バケットに追加するには
  1. Amazon S3 コンソール (https://console.aws.amazon.com/s3/) を開きます。

  2. CloudTrail Lake クエリ結果ファイルを配信するバケットを選択し、[Permissions] (アクセス許可) を選択します。

  3. [Edit] (編集) を選択します。

  4. S3 bucket policy for query results を [Bucket Policy Editor] ウィンドウにコピーします。イタリック体のプレースホルダーを、バケット、リージョン、アカウント ID の名前に置き換えます。

    注記

    既存のバケットにすでに 1 つ以上のポリシーがアタッチされている場合は、そのポリシーに CloudTrail アクセスのステートメントを追加します。バケットにアクセスするユーザーに適していることを確認するために、作成したアクセス権限のセットを評価します。

追加リソース

S3 バケットポリシーの詳細については、Amazon Simple Storage Service ユーザーガイドの「バケットポリシーの使用」を参照してください。