1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Configのログ配信先S3バケットをKMS暗号化する

Posted at

はじめに

2021年2月からAWS Config で使用される S3 バケットでの KMS での暗号化がサポートされたとのことです。

S3バケット側でKMSでの暗号化設定をしていても、オブジェクト単位ではデフォルトでS3 マネージド暗号化キー (SSE-S3)で暗号化されています。
こちらの記載通りに設定することでKMS暗号化できたので、手順を残します。
https://aws.amazon.com/about-aws/whats-new/2021/02/support-for-kms-encryption-on-s3-buckets-used-by-aws-config/?nc1=h_ls

手順

KMSキーのキーポリシーを設定する

Configからアクセスできるよう、S3バケット暗号化に使用するKMSキーのキーポリシーをKMSの管理画面から設定します。
通常のIAMロールを用いた場合か「サービスにリンクされたロール」の場合に応じて下記に例がありますので、適切な方を選んで設定してください。

今回は「サービスにリンクされたロール」を用いている場合とし、下記の例で設定していきます。

{
    "Id": "Policy_ID",
    "Statement": [
        {
            "Sid": "AWSConfigKMSPolicy",
            "Effect": "Allow",
            "Principal": {
                "Service": "config.amazonaws.com"
            },
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:ap-northeast-1:111122223333:key/abcdefgh-hijk-lmno-pqrs-tuvwxyz12345"
        }
    ]
}

put-delivery-channel APIでKMSキーのARNをConfigに登録する

AWS CLIを用いて設定します。

現状の設定の確認をする

describe-delivery-channelsコマンドで変更前の状況を確認しておきます。

aws configservice describe-delivery-channels
レスポンス
{
    "DeliveryChannels": [
        {
            "name": "default",
            "s3BucketName": "your-bucket-name",
            "snsTopicARN": "arn:aws:sns:ap-northeast-1:111122223333:your-topic-name"
        }
    ]
}

KMSキーのARNをConfigに登録する

put-delivery-channelコマンドでS3バケットの暗号化に使用するKMSキーのARNをConfigに登録します。
s3KmsKeyArnにKMSキーのARNを設定します。

aws configservice put-delivery-channel --delivery-channel name=default,s3BucketName=your-bucket-name,s3KmsKeyArn=arn:aws:kms:ap-northeast-1:111122223333:key/abcdefgh-hijk-lmno-pqrs-tuvwxyz12345,snsTopicARN=arn:aws:sns:ap-northeast-1:111122223333:your-topic-name

登録されたか再度確認してみます。

aws configservice describe-delivery-channels
レスポンス
{
    "DeliveryChannels": [
        {
            "name": "default",
            "s3BucketName": "your-bucket-name",
            "s3KmsKeyArn": "arn:aws:kms:ap-northeast-1:111122223333:key/abcdefgh-hijk-lmno-pqrs-tuvwxyz12345",
            "snsTopicARN": "arn:aws:sns:ap-northeast-1:111122223333:your-topic-name"
        }
    ]
}

s3KmsKeyArnがちゃんと登録されたようです。

この後、Configから配信されたオブジェクトがKMSで暗号化されていることを確認できました!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?