AWS CloudTrail
ユーザーガイド (Version 1.0)

AWS Command Line Interface による組織の証跡の作成

AWS CLI を使用して組織の証跡を作成できます。AWS CLI は定期的に追加の機能とコマンドで更新されています。確実に成功するためには、開始する前に最新の AWS CLI バージョンをインストールまたは更新したことを確認してください。

注記

このセクションの例は、組織の証跡の作成と更新に固有のものです。証跡を管理するための AWS CLI の使用例については、「AWS CLI を使用して証跡を管理する」を参照してください。AWS CLI を使用して組織の証跡を作成または更新するときは、十分なアクセス許可を持つマスターアカウントで AWS CLI プロファイルを使用する必要があります。

組織の証跡に使用する Amazon S3 バケットを十分なアクセス許可で設定する必要があります。

組織の証跡のログファイルを保存するために使用する Amazon S3 バケットを作成または更新する

組織の証跡のログファイルを受信するには、Amazon S3 バケットを指定する必要があります。このバケットには、CloudTrail が組織のログファイルをバケットに入れることを許可するポリシーが必要です。

以下は、my-organization-bucket という名前の Amazon S3 バケットのポリシーの例です。このバケットは、ID 111111111111 を持つ AWS アカウントにあります。これは、組織の証跡のログ記録を許可する ID o-exampleorgid を持つ組織のマスターアカウントです。また、証跡が組織の証跡からそのアカウントの証跡のみに変更された場合に、111111111111 アカウントのログを記録することもできます。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailAclCheck20150319", "Effect": "Allow", "Principal": { "Service": [ "cloudtrail.amazonaws.com" ] }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::my-organization-bucket" }, { "Sid": "AWSCloudTrailWrite20150319", "Effect": "Allow", "Principal": { "Service": [ "cloudtrail.amazonaws.com" ] }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-organization-bucket/AWSLogs/111111111111/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } }, { "Sid": "AWSCloudTrailWrite20150319", "Effect": "Allow", "Principal": { "Service": [ "cloudtrail.amazonaws.com" ] }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-organization-bucket/AWSLogs/o-exampleorgid/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } } ] }

このポリシー例では、メンバーアカウントのユーザーが組織用に作成されたログファイルにアクセスすることを許可していません。デフォルトでは、組織のログファイルはマスターアカウントにのみアクセスできます。メンバーアカウントの IAM ユーザーに対して Amazon S3 バケットへの読み取りアクセスを許可する方法については、「AWS アカウント間での CloudTrail ログファイルの共有」を参照してください。

AWS Organizations で信頼済みサービスとして CloudTrail を有効にする

組織の証跡を作成する前に、まず 組織 のすべての機能を有効化する必要があります。詳細については、「有効化」を参照してください。または、マスターアカウントで十分なアクセス許可を持つプロファイルを使用して、次のコマンドを実行します。

aws organizations enable-all-features

すべての機能を有効化したら、CloudTrail を信頼できるサービスとして信頼するように 組織 を設定する必要があります。

AWS Organizations と CloudTrail の間に信頼できるサービスの関係を作成するには、端末またはコマンドラインを開き、マスターアカウントのプロファイルを使用します。以下の例のように、aws organizations enable-aws-service-access コマンドを実行します。

aws organizations enable-aws-service-access --service-principal cloudtrail.amazonaws.com

create-trail の使用

すべてのリージョンに適用される組織の証跡の作成

すべてのリージョンに適用される組織の証跡を作成するには、--is-organization-trail および --is-multi-region-trail オプションを使用します。

注記

AWS CLI を使用して組織の証跡を作成または更新するときは、十分なアクセス許可を持つマスターアカウントで AWS CLI プロファイルを使用する必要があります。

次の例では、すべてのリージョンから my-bucket という既存のバケットにログを配信する組織の証跡を作成します。

aws cloudtrail create-trail --name my-trail --s3-bucket-name my-bucket --is-organization-trail --is-multi-region-trail

証跡がすべてのリージョンに存在することを確認するために、出力の IsOrganizationTrail および IsMultiRegionTrail 要素に true と表示されます。

{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "IsOrganizationTrail": true, "S3BucketName": "my-bucket" }

注記

証跡のログ記録を開始するには start-logging コマンドを使用します。詳細については、「証跡のログ記録の停止と開始」を参照してください。

単一リージョンの証跡としての組織の証跡の作成

次のコマンドは、単一リージョンの証跡とも呼ばれる単一の AWS リージョン内のイベントのみを記録する組織の証跡を作成します。イベントが記録される AWS リージョンは、AWS CLI の設定プロファイルで指定されているリージョンです。

aws cloudtrail create-trail --name my-trail --s3-bucket-name my-bucket --is-organization-trail

詳細については、「CloudTrail 証跡の命名要件」を参照してください。

サンプル出力:

{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "IsOrganizationTrail": true, "S3BucketName": "my-bucket" }

デフォルトでは、create-trail コマンドは単一リージョンの証跡を作成し、その証跡はログファイルの検証を有効にしません。

注記

証跡のログ記録を開始するには start-logging コマンドを使用します。

update-trail を使って組織の証跡を更新する

update-trail コマンドを使用して、組織の証跡の設定を変更したり、単一の AWS アカウントの既存の証跡を組織全体に適用したりできます。その場合、update-trail コマンドは、証跡が作成されたリージョンからのみ実行できます。

注記

AWS CLI またはいずれかの AWS SDK を使用して証跡を変更する場合は、証跡のバケットポリシーが最新の状態に保たれていることを確認します。詳細については、「AWS Command Line Interface による組織の証跡の作成」を参照してください。

AWS CLI を使用して組織の証跡を作成または更新するときは、十分なアクセス許可を持つマスターアカウントで AWS CLI プロファイルを使用する必要があります。

既存の証跡を組織に適用する

既存の証跡を単一の AWS アカウントではなく組織にも適用するように変更するには、--is-organization-trail オプションを使用します。

aws cloudtrail update-trail --name my-trail --is-organization-trail

証跡が組織に適用されるようになったことを確認するために、出力の IsOrganizationTrail 要素に true と表示されます。

{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "IsOrganizationTrail": true, "S3BucketName": "my-bucket" }

上記の例では、証跡は以前にすべてのリージョンに適用されるように構成されています ("IsMultiRegionTrail": true)。これが単一のリージョンにのみ適用される証跡であった場合、出力には "IsMultiRegionTrail": false と表示されます。

1 つのリージョンに適用される組織の証跡を変換してすべてのリージョンに適用

既存の組織の証跡を変更し、すべてのリージョンに適用されるようにするには、--is-multi-region-trail オプションを使用します。

aws cloudtrail update-trail --name my-trail --is-multi-region-trail

証跡がすべてのリージョンに適用されるようになったことを確認するために、出力の IsMultiRegionTrail 要素に true と表示されます。

{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "IsOrganizationTrail": true, "S3BucketName": "my-bucket" }