Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana AWS CloudTrail menggunakan AWS KMS
Bagian ini menjelaskan cara AWS KMS kerja dengan CloudTrail jejak yang dienkripsi dengan kunci SSE -KMS.
penting
AWS CloudTrail dan Amazon S3 hanya mendukung simetris. AWS KMS keys Anda tidak dapat menggunakan KMSkunci asimetris untuk mengenkripsi Log Anda CloudTrail . Untuk bantuan menentukan apakah KMS kunci simetris atau asimetris, lihat Mengidentifikasi tipe kunci yang berbeda dalam Panduan AWS Key Management Service Pengembang.
Anda tidak membayar biaya penggunaan kunci saat CloudTrail membaca atau menulis file log yang dienkripsi dengan kunci SSE -KMS. Namun, Anda membayar biaya penggunaan kunci saat mengakses file CloudTrail log yang dienkripsi dengan kunci SSE -KMS. Untuk informasi tentang AWS KMS harga, lihat AWS Key Management Service Harga
Memahami kapan KMS kunci Anda digunakan untuk jejak Anda
Mengenkripsi file CloudTrail log dengan AWS KMS build pada fitur Amazon S3 yang disebut enkripsi sisi server dengan (-). AWS KMS key SSE KMS Untuk mempelajari lebih lanjut tentang SSE -KMS, lihat Menggunakan enkripsi sisi server dengan AWS KMS kunci (SSE-KMS) di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Ketika Anda mengonfigurasi AWS CloudTrail untuk menggunakan SSE - KMS untuk mengenkripsi file log Anda, CloudTrail dan Amazon S3 menggunakan AWS KMS keys Anda ketika Anda melakukan tindakan tertentu dengan layanan tersebut. Bagian berikut menjelaskan kapan dan bagaimana layanan tersebut dapat menggunakan KMS kunci Anda, dan memberikan informasi tambahan yang dapat Anda gunakan untuk memvalidasi penjelasan ini.
Tindakan yang menyebabkan CloudTrail dan Amazon S3 menggunakan kunci Anda KMS
Anda mengonfigurasi CloudTrail untuk mengenkripsi file log dengan AWS KMS key
Saat Anda memperbarui CloudTrail konfigurasi untuk menggunakan KMS kunci Anda, CloudTrail kirimkan GenerateDataKey
permintaan AWS KMS untuk memverifikasi bahwa KMS kunci itu ada dan yang CloudTrail memiliki izin untuk menggunakannya untuk enkripsi. CloudTrail tidak menggunakan kunci data yang dihasilkan.
Permintaan GenerateDataKey
tersebut mencakup informasi berikut untuk konteks enkripsi:
-
Nama Sumber Daya Amazon (ARN) dari CloudTrail jejak
-
Bucket S3 dan jalur tempat file CloudTrail log dikirimkan ARN
GenerateDataKey
Permintaan menghasilkan entri di CloudTrail log Anda yang mirip dengan contoh berikut. Ketika Anda melihat entri log seperti ini, Anda dapat menentukan yang CloudTrail disebut AWS KMS GenerateDataKey
operasi untuk jejak tertentu. AWS KMS membuat kunci data di bawah KMS kunci tertentu.
{ "eventVersion": "1.09", "userIdentity": { "type": "AWSService", "invokedBy": "cloudtrail.amazonaws.com" }, "eventTime": "2024-12-06T20:14:46Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "cloudtrail.amazonaws.com", "userAgent": "cloudtrail.amazonaws.com", "requestParameters": { "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770", "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/management-events", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket-123456789012-9af1fb49/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2010Z_TO50OLMG1hIQ1png.json.gz" } }, "responseElements": null, "requestID": "a0555e85-7e8a-4765-bd8f-2222295558e1", "eventID": "e4f3557e-7dbd-4e37-a00a-d86c137d1111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770" }], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "sharedEventID": "ce71d6be-0846-498e-851f-111a1af9078f", "eventCategory": "Management" }
CloudTrail menempatkan file log ke bucket S3 Anda
Setiap kali CloudTrail memasukkan file log ke bucket S3 Anda, Amazon S3 mengirimkan GenerateDataKey
permintaan AWS KMS ke atas nama. CloudTrail Menanggapi permintaan ini, AWS KMS buat kunci data unik dan kemudian mengirimkan Amazon S3 dua salinan kunci data, satu dalam teks biasa dan satu yang dienkripsi dengan kunci yang ditentukan. KMS Amazon S3 menggunakan kunci data plaintext untuk mengenkripsi file CloudTrail log dan kemudian menghapus kunci data plaintext dari memori sesegera mungkin setelah digunakan. Amazon S3 menyimpan kunci data terenkripsi sebagai metadata dengan file log terenkripsi. CloudTrail
Permintaan GenerateDataKey
tersebut mencakup informasi berikut untuk konteks enkripsi:
-
Nama Sumber Daya Amazon (ARN) dari CloudTrail jejak
-
ARNObjek S3 (file CloudTrail log)
Setiap GenerateDataKey
permintaan menghasilkan entri di CloudTrail log Anda yang mirip dengan contoh berikut. Ketika Anda melihat entri log seperti ini, Anda dapat menentukan yang CloudTrail disebut AWS KMS GenerateDataKey
operasi untuk jejak tertentu untuk melindungi file log tertentu. AWS KMS membuat kunci data di bawah kunci yang ditentukanKMS, ditampilkan dua kali dalam entri log yang sama.
{ "eventVersion": "1.09", "userIdentity": { "type": "AWSService", "invokedBy": "cloudtrail.amazonaws.com" }, "eventTime": "2024-12-06T21:49:28Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "cloudtrail.amazonaws.com", "userAgent": "cloudtrail.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1::trail/insights-trail", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2150Z_hVXmrJzjZk2wAM2V.json.gz" }, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" }, "responseElements": null, "requestID": "11117d14-9232-414a-b3d1-01bab4dc9f99", "eventID": "999e9a50-512c-4e2a-84a3-111a5f511111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "sharedEventID": "5e663acc-b7fd-4cdd-8328-0eff862952fa", "eventCategory": "Management" }
Anda mendapatkan berkas log yang dienkripsi dari bucket S3 Anda
Setiap kali Anda mendapatkan file CloudTrail log terenkripsi dari bucket S3 Anda, Amazon S3 mengirimkan Decrypt
permintaan ke AWS KMS atas nama Anda untuk mendekripsi kunci data terenkripsi file log. Menanggapi permintaan ini, AWS KMS gunakan KMS kunci Anda untuk mendekripsi kunci data dan kemudian mengirimkan kunci data teks biasa ke Amazon S3. Amazon S3 menggunakan kunci data plaintext untuk mendekripsi file CloudTrail log dan kemudian menghapus kunci data plaintext dari memori sesegera mungkin setelah digunakan.
Permintaan Decrypt
tersebut mencakup informasi berikut untuk konteks enkripsi:
-
Nama Sumber Daya Amazon (ARN) dari CloudTrail jejak
-
ARNObjek S3 (file CloudTrail log)
Setiap Decrypt
permintaan menghasilkan entri di CloudTrail log Anda yang mirip dengan contoh berikut. Ketika Anda melihat entri log seperti ini, Anda dapat menentukan bahwa peran yang diasumsikan disebut AWS KMS Decrypt
operasi untuk jejak tertentu dan file log tertentu. AWS KMS mendekripsi kunci data di bawah kunci tertentuKMS.
{ "eventVersion": "1.09", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/Admin", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:role/Admin", "accountId": "123456789012", "userName": "Admin" }, "attributes": { "creationDate": "2024-12-06T22:04:04Z", "mfaAuthenticated": "false" } }, "invokedBy": "AWS Internal" }, "eventTime": "2024-12-06T22:26:34Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "AWS Internal", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/insights-trail", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T0000Z_aAAsHbGBdye3jp2R.json.gz" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "1ab2d2d2-111a-2222-a59b-11a2b3832b53", "eventID": "af4d4074-2849-4b3d-1a11-a1aaa111a111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management", "sessionCredentialFromConsole": "true" }