AWS Config(AWS)の概要整理

AWS
この記事は約4分で読めます。
スポンサーリンク

AWS ConfigはAWSの変更内容を記録するサービスです。

概要

AWS ConfigはAWS上での変更内容を記録します。
変更内容はS3に保存するか、SNSで送信します。
S3に保存する形が一般的でしょうか。
S3には6時間ごとに変更内容が保存されます。
AWS Config の仕組み

配信チャネル

配信チャネルは変更内容を配信するための設定になります。
宛先としてはS3かSNSになります。
作成は管理コンソールからできますが、削除はAWS CLI経由でしかできません。
配信チャネルの管理

IAMロール

AWS Configが使用するロールになります。
自動的に作成されるロールで問題無いでしょう。

手動で作成する場合はAWS Config用のロール/ポリシーを作成します。
また、S3を使用する場合はS3のバケットポリシーも設定します。
SNSを使用する場合はSNSを使用するポリシーも必要となります。
IAM に割り当てられた AWS Config ロールのアクセス許可
Amazon S3 バケットへのアクセス許可

有効化する場合にエラーが出る場合はS3へのポリシー/パケットポリシーが不足しており科アクセスができない場合です。

IAMロール/S3を自動作成にした場合

IAMロールとして「AWSServiceRoleForConfig」を使用する形になります。
「AWSConfigServiceRolePolicy」が割り当てられます。AWS Configが情報を取得するためのGet/List/Describe権限が付与されています。

作成されたS3にはバケットポリシーが設定されます。
バケットに対する「GetBucketAcl」「ListBucket」の参照権限が割り当てられます。
また、書き込み権限として「PutObject」が割り当てられます。

{
     "Version": "2012-10-17",
     "Statement": [
         {
             "Sid": "AWSConfigBucketPermissionsCheck",
             "Effect": "Allow",
             "Principal": {
                 "Service": "config.amazonaws.com"
             },
             "Action": "s3:GetBucketAcl",
             "Resource": "arn:aws:s3:::<バケット名>"
         },
         {
             "Sid": "AWSConfigBucketExistenceCheck",
             "Effect": "Allow",
             "Principal": {
                 "Service": "config.amazonaws.com"
             },
             "Action": "s3:ListBucket",
             "Resource": "arn:aws:s3:::<バケット名>"
         },
         {
             "Sid": "AWSConfigBucketDelivery",
             "Effect": "Allow",
             "Principal": {
                 "Service": "config.amazonaws.com"
             },
             "Action": "s3:PutObject",
             "Resource": "arn:aws:s3:::<バケット名>/conflog/AWSLogs/sourceAccountID-WithoutHyphens/Config/*",
             "Condition": {
                 "StringEquals": {
                     "s3:x-amz-acl": "bucket-owner-full-control"
                 }
             }
         }
     ]
 }

コメント

タイトルとURLをコピーしました