AWS CLI を使用した CloudTrail ログファイル、ダイジェストファイル、イベントデータストアの暗号化の有効化と無効化
このトピックでは、AWS CLI を使用して CloudTrail ログファイル、ダイジェストファイル、およびイベントデータストアの SSE-KMS 暗号化を有効または無効にする方法を説明します。背景情報については、「AWS KMS キーを使用した CloudTrail ログファイル、ダイジェストファイル、イベントデータストアの暗号化 (SSE-KMS)」を参照してください。
トピック
AWS CLI を使用して CloudTrail ログファイル、ダイジェストファイル、イベントデータストアの暗号化を有効にする
証跡のログファイルとダイジェストファイルの暗号化を有効にする
-
AWS CLI を使用してキーを作成します。作成するキーは、CloudTrail ログファイルを受け取る S3 バケットと同じリージョンに配置する必要があります。このステップでは、AWS KMS create-key コマンドを使用します。
-
既存のキーポリシーを取得します。これを変更して CloudTrail で使用することができます。AWS KMS get-key-policy コマンドを使用してキーポリシーを取得できます。
-
CloudTrail がログファイルとダイジェストファイルを暗号化し、ユーザーがログファイルとダイジェストファイルを復号できるように、必要なセクションをキーポリシーに追加します。ログファイルを読むすべてのユーザーに、復号許可が付与されているようにしてください。ポリシーの既存のセクションを変更しないでください。追加するポリシーセクションの詳細については、「CloudTrail の AWS KMS キーポリシーの設定」を参照してください。
-
AWS KMS put-key-policy コマンドを使用して、変更した JSON ポリシーファイルをキーにアタッチします。
-
--kms-key-idパラメーターで、CloudTrailcreate-trailまたはupdate-trailコマンドを実行します。このコマンドは、ログファイルとダイジェストファイルの暗号化を有効にします。aws cloudtrail update-trail --name Default --kms-key-id alias/MyKmsKey--kms-key-idパラメーターに、CloudTrail のためにポリシーを変更したキーを指定します。次のいずれかの形式を指定できます。-
エイリアス名: 例:
alias/MyAliasName -
エイリアス ARN: 例:
arn:aws:kms:us-east-2:123456789012:alias/MyAliasName -
キー ARN: 例:
arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012 -
グローバルに一意のキー ID: 例:
12345678-1234-1234-1234-123456789012
以下に、応答の例を示します。
{ "IncludeGlobalServiceEvents": true, "Name": "Default", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", "LogFileValidationEnabled": false, "KmsKeyId": "arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012", "S3BucketName": "amzn-s3-demo-bucket" }KmsKeyId要素の存在は、ログファイルの暗号化が有効になったことがわかります。ログファイルの検証が有効になっている場合 (true に設定されているLogFileValidationEnabled要素によって示される)、これはダイジェストファイルに対して暗号化が有効になっていることも示します。暗号化されたログファイルとダイジェストファイルは、約 5 分以内に証跡用に設定された S3 バケットに表示されます。 -
イベントデータストアの暗号化を有効にする
-
AWS CLI を使用してキーを作成します。作成するキーは、イベントデータストアと同一のリージョンにある必要があります。このステップでは、AWS KMS create-key コマンドを実行します。
-
CloudTrail で使用するために編集する既存のキーポリシーを取得します。AWS KMS get-key-policy コマンドを実行して、キーポリシーを取得できます。
-
CloudTrail がイベントデータストアを暗号化し、ユーザーがそれを復号できるように、必要なセクションをキーポリシーに追加します。イベントデータストアを読み取るすべてのユーザーに、復号許可が付与されているようにしてください。ポリシーの既存のセクションを変更しないでください。追加するポリシーセクションの詳細については、「CloudTrail の AWS KMS キーポリシーの設定」を参照してください。
-
AWS KMS put-key-policy コマンドを実行して、編集した JSON ポリシー ファイルをキーにアタッチします。
-
CloudTrail
create-event-data-storeまたはupdate-event-data-storeコマンドを実行し、--kms-key-idパラメータを追加します。このコマンドは、イベントデータストアの暗号化を有効にします。aws cloudtrail update-event-data-store --name my-event-data-store --kms-key-id alias/MyKmsKey--kms-key-idパラメーターに、CloudTrail のためにポリシーを変更したキーを指定します。次の 4 つの形式のいずれかを指定できます。-
エイリアス名: 例:
alias/MyAliasName -
エイリアス ARN: 例:
arn:aws:kms:us-east-2:123456789012:alias/MyAliasName -
キー ARN: 例:
arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012 -
グローバルに一意のキー ID: 例:
12345678-1234-1234-1234-123456789012
以下に、応答の例を示します。
{ "Name": "my-event-data-store", "ARN": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLEf852-4e8f-8bd1-bcf6cEXAMPLE", "RetentionPeriod": "90", "KmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" "MultiRegionEnabled": false, "OrganizationEnabled": false, "TerminationProtectionEnabled": true, "AdvancedEventSelectors": [{ "Name": "Select all external events", "FieldSelectors": [{ "Field": "eventCategory", "Equals": [ "ActivityAuditLog" ] }] }] }KmsKeyId要素の存在は、イベントデータストアの暗号化が有効になっていることを示します。 -
AWS CLI を使用してログファイルとダイジェストファイルの暗号化を無効にする
証跡でのログファイルとダイジェストファイルの暗号化を停止するには、update-trail を実行して、空の文字列を kms-key-id パラメータに渡します。
aws cloudtrail update-trail --name my-test-trail --kms-key-id ""
以下に、応答の例を示します。
{ "IncludeGlobalServiceEvents": true, "Name": "Default", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", "LogFileValidationEnabled": false, "S3BucketName": "amzn-s3-demo-bucket" }
KmsKeyId の値がないため、ログファイルとダイジェストファイルの暗号化が有効でなくなったことを示します。
重要
イベントデータストアの暗号化を停止することはできません。