組織の証跡の作成を準備する - AWS CloudTrail

組織の証跡の作成を準備する

組織の証跡を作成する前に、自分の組織と管理アカウントの両方が証跡作成用に正しく設定されていることを確認してください。

  • 証跡を作成する前に、組織ですべての機能を有効にしておく必要があります。詳細については、「組織内のすべての機能の有効化」を参照してください。

  • 管理アカウントには AWSServiceRoleForOrganizations ロールが必要です。このロールは組織の作成時に Organizations によって自動的に作成され、 CloudTrailが組織のログイベントを記録するために必要となります。詳細については、「Organizations およびサービスにリンクされたロール」を参照してください。

  • 管理アカウントで組織の証跡を作成するために使用される IAM ユーザーまたはロールには、組織の証跡を作成するための十分なアクセス許可が必要です。最低でも、組織の証跡を作成するには、AWSCloudTrail_FullAccess ポリシーまたは同等の許可を適用する必要があります。また、IAM と Organizations には、サービスリンクのロールを作成し、信頼されたアクセスを有効にするための十分なアクセス許可が必要です。次のポリシー例は、これらの最低限必要なアクセス許可を示しています。

    注記

    AWSCloudTrail_FullAccess ポリシーは、お客様の AWS アカウントで広く共有することを意図したものではありません。CloudTrail によって収集される情報は機密性が高いため、これらのポリシーは AWS アカウントの管理者に制限する必要があります。このロールを持つユーザーは、AWS アカウントの最も機密かつ重要な監査機能を無効にしたり、再設定したりすることができます。このため、このポリシーへのアクセスは、厳密に管理および監視する必要があります。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetRole", "organizations:EnableAWSServiceAccess", "organizations:ListAccounts", "iam:CreateServiceLinkedRole", "organizations:DisableAWSServiceAccess", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization" ], "Resource": "*" } ] }
  • AWS CLI または CloudTrail API を使用して組織の証跡を作成するには、Organizations で CloudTrail に対する信頼できるアクセスを有効にします。続いて、Amazon S3 バケットを手動で作成し、組織の証跡の記録を許可するポリシーをそのバケットに関連付ける必要があります。詳細については、「AWS Command Line Interface による組織の証跡の作成」を参照してください。

  • 以下の例に示すように、既存の IAM ロールを使用して組織の証跡のモニタリングを Amazon CloudWatch Logs に追加するには、管理アカウントの CloudWatch Logs グループへの CloudWatch Logs の配信をメンバーアカウントに許可するように、IAM ロールを手動で変更する必要があります。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailCreateLogStream20141101", "Effect": "Allow", "Action": [ "logs:CreateLogStream" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] }, { "Sid": "AWSCloudTrailPutLogEvents20141101", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] } ] }

    CloudTrail と Amazon CloudWatch Logs の詳細については、Amazon CloudWatch Logs による CloudTrail ログファイルをモニタリングする で説明します。さらに、組織の証跡での経験を可能にすることを決定する前に、CloudWatch Logs の制限とサービスの価格設定に関する考慮事項を検討します。詳細については、「CloudWatch Logs の制限」と「Amazon CloudWatch の料金」を参照してください。

  • メンバーアカウントの特定のリソースについて組織内のデータイベントを記録するには、それらの各リソースの Amazon リソースネーム (ARN) のリストを準備します。メンバーアカウントリソースは、証跡の作成時に CloudTrail コンソールに表示されません。S3 バケットなど、データイベント収集がサポートされる管理アカウントのリソースを参照できます。同様に、コマンドラインで組織の証跡を作成または更新するときに特定のメンバーリソースを追加する場合は、それらのリソースの ARN が必要です。

    注記

    データイベントのログ記録には追加料金が適用されます。CloudTrail の料金については、「AWS CloudTrail 料金表」を参照してください。

組織の証跡を作成する前に、管理アカウントとメンバーアカウントにすでに存在する証跡の数を確認することも検討する必要があります。CloudTrail では、各リージョンに作成できる証跡の数が制限されます。管理アカウントで組織の証跡を作成するリージョンでは、この制限を超えることはできません。ただし、メンバーアカウントがリージョン内の証跡の上限に達した場合でも、証跡はメンバーアカウントに作成されます。どのリージョンでも管理イベントの最初の証跡は無料ですが、追加の証跡には料金がかかります。組織の証跡の潜在的なコストを削減するには、管理アカウントとメンバーアカウントの不要な証跡を削除することを検討してください。CloudTrail の料金の詳細については、「AWS CloudTrailの料金」を参照してください。

組織の証跡におけるセキュリティのベストプラクティス

セキュリティのベストプラクティスとして、組織証跡で使用するリソースポリシー (S3 バケット、KMS キー、SNS トピックなど) に aws:SourceArn 条件キーを追加することが奨励されています。aws:SourceArn の値は、組織の証跡 ARN (または、複数の証跡のログを保存するために同じ S3 バケットなど、複数の証跡に同じリソースを使用している場合は ARN) です。これにより、S3 バケットなどのリソースは、特定の証跡に関連付けられているデータのみを受け付けます。証跡 ARN は、管理アカウントのアカウント ID を使用する必要があります。次のポリシースニペットは、複数の証跡がリソースを使用している例を示しています。

"Condition": { "StringEquals": { "AWS:SourceArn": ["Trail_ARN_1",..., "Trail_ARN_n"] } }

リソースポリシーに条件キーを追加する方法については、以下を参照してください。