コンテンツにスキップ

1. S3 ログアカウントバケットの構成#

ここでは ログ集約バケットの設定方法について説明します。構成の前提を以下とします。

  • ログアカウントの払い出しが完了していること
  • バケットの命名が決まっていること
  • 事前に管理(支払い)アカウントのOrganizationsから組織ID(o-で始まるID)を確認しておくこと

本作業はログアカウントで実施します

1.1. ログバケットの作成#

1.AWS 管理コンソールから S3 を開きます。

2.ログ用のバケットを作成します。命名はあらかじめ決めておきます。ログバケットの暗号化は必須ではありませんが KMS 暗号化または S3 暗号化による暗号化を行います。

画面はS3の標準暗号化です

3.作成したログバケットをクリックし アクセス許可 タブをクリックします。

4.バケットポリシーから 編集 ボタンをクリックします。以下のポリシーをコピペします。

バケット名と組織名は適切なものへの書き換えます

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AWSConsolidatedLogs",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "config.amazonaws.com",
                    "delivery.logs.amazonaws.com",
                    "logs.amazonaws.com",
                    "cloudtrail.amazonaws.com"
                ]
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::バケット名"
        },
        {
            "Sid": "AWSConsolidatedLogs",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "config.amazonaws.com",
                    "delivery.logs.amazonaws.com",
                    "logs.amazonaws.com",
                    "cloudtrail.amazonaws.com"
                ]
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::バケット名/*",
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control"
                }
            }
        },
        {
            "Sid": "AWSConsolidatedLogs",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "config.amazonaws.com",
                    "delivery.logs.amazonaws.com",
                    "logs.amazonaws.com",
                    "cloudtrail.amazonaws.com"
                ]
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::バケット名/*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalOrgID": "Organizations組織ID"
                }
            }
        },
        {
            "Sid": "AllowSSLRequestsOnly",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::バケット名",
                "arn:aws:s3:::バケット名/*"
            ],
            "Condition": {
                "Bool": {
                    "aws:SecureTransport": "false"
                }
            }
        }
    ]
}
5.変更の保存 をクリックします。これにてログバケットの設定は完了となります。