Kebijakan AWS KMS kunci yang diperlukan untuk digunakan dengan volume terenkripsi - EC2 Auto Scaling Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kebijakan AWS KMS kunci yang diperlukan untuk digunakan dengan volume terenkripsi

Amazon EC2 Auto Scaling menggunakan peran terkait layanan untuk mendelegasikan izin ke yang lain. Layanan AWS Peran terkait layanan Amazon EC2 Auto Scaling telah ditentukan sebelumnya dan menyertakan izin yang diperlukan Amazon Auto Scaling EC2 untuk memanggil orang lain atas nama Anda. Layanan AWS Izin yang telah ditentukan juga mencakup akses ke Anda. Kunci yang dikelola AWS Namun, mereka tidak menyertakan akses ke kunci yang dikelola pelanggan Anda, memungkinkan Anda untuk mempertahankan kontrol penuh atas kunci ini.

Topik ini menjelaskan cara menyiapkan kebijakan kunci yang Anda perlukan untuk meluncurkan instans Auto Scaling saat Anda menentukan kunci terkelola pelanggan untuk enkripsi Amazon EBS.

catatan

EC2 Auto Scaling Amazon tidak memerlukan otorisasi tambahan untuk menggunakan default Kunci yang dikelola AWS guna melindungi volume terenkripsi di akun Anda.

Gambaran Umum

Berikut ini AWS KMS keys dapat digunakan untuk enkripsi Amazon EBS saat Amazon EC2 Auto Scaling meluncurkan instance:

  • Kunci yang dikelola AWS— Kunci enkripsi di akun Anda yang dibuat, dimiliki, dan dikelola Amazon EBS. Ini adalah kunci enkripsi default untuk akun baru. Kunci yang dikelola AWS Ini digunakan untuk enkripsi kecuali Anda menentukan kunci yang dikelola pelanggan.

  • Kunci terkelola pelanggan — Kunci enkripsi khusus yang Anda buat, miliki, dan kelola. Untuk informasi selengkapnya, lihat Membuat kunci di Panduan AWS Key Management Service Pengembang.

    Catatan: Kuncinya harus simetris. Amazon EBS tidak mendukung kunci yang dikelola pelanggan asimetris.

Anda mengonfigurasi kunci terkelola pelanggan saat membuat snapshot terenkripsi atau templat peluncuran yang menentukan volume terenkripsi, atau mengaktifkan enkripsi secara default.

Konfigurasikan kebijakan utama

Kunci KMS Anda harus memiliki kebijakan utama yang memungkinkan Amazon EC2 Auto Scaling meluncurkan instans dengan volume Amazon EBS yang dienkripsi dengan kunci yang dikelola pelanggan.

Gunakan contoh di halaman ini untuk mengonfigurasi kebijakan kunci agar Amazon EC2 Auto Scaling akses ke kunci terkelola pelanggan Anda. Anda dapat mengubah kebijakan kunci kunci yang dikelola pelanggan baik ketika kunci dibuat atau di lain waktu.

Anda harus, setidaknya, menambahkan dua pernyataan kebijakan ke kebijakan utama Anda agar dapat berfungsi dengan Amazon EC2 Auto Scaling.

  • Pernyataan pertama memungkinkan identitas IAM yang ditentukan dalam Principal elemen untuk menggunakan kunci yang dikelola pelanggan secara langsung. Ini termasuk izin untuk melakukan AWS KMS Encrypt,,Decrypt, ReEncrypt*GenerateDataKey*, dan DescribeKey operasi pada kunci.

  • Pernyataan kedua memungkinkan identitas IAM yang ditentukan dalam Principal elemen untuk menggunakan CreateGrant operasi untuk menghasilkan hibah yang mendelegasikan subset dari izinnya sendiri untuk Layanan AWS yang terintegrasi dengan atau prinsipal lain. AWS KMS Ini memungkinkan mereka untuk menggunakan kunci untuk membuat sumber daya terenkripsi atas nama Anda.

Saat Anda menambahkan pernyataan kebijakan baru ke kebijakan utama Anda, jangan mengubah pernyataan yang ada dalam kebijakan tersebut.

Untuk setiap contoh berikut, argumen yang harus diganti, seperti ID kunci atau nama peran terkait layanan, ditampilkan sebagai. user placeholder text Dalam kebanyakan kasus, Anda dapat mengganti nama peran terkait layanan dengan nama peran terkait layanan Amazon Auto EC2 Scaling.

Untuk informasi selengkapnya, lihat sumber daya berikut:

Contoh 1: Bagian kebijakan utama yang memungkinkan akses ke kunci yang dikelola pelanggan

Tambahkan dua pernyataan kebijakan berikut ke kebijakan kunci kunci yang dikelola pelanggan, ganti contoh ARN dengan ARN dari peran terkait layanan yang sesuai yang diizinkan akses ke kunci. Dalam contoh ini, bagian kebijakan memberikan AWSServiceRoleForAutoScalingizin bernama peran terkait layanan untuk menggunakan kunci terkelola pelanggan.

{ "Sid": "Allow service-linked role use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
{ "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } }

Contoh 2: Bagian kebijakan utama yang memungkinkan akses lintas akun ke kunci yang dikelola pelanggan

Jika Anda membuat kunci terkelola pelanggan di akun yang berbeda dari grup Auto Scaling, Anda harus menggunakan hibah yang dikombinasikan dengan kebijakan kunci untuk mengizinkan akses lintas akun ke kunci tersebut.

Ada dua langkah yang harus diselesaikan dengan urutan sebagai berikut:

  1. Pertama, tambahkan dua pernyataan kebijakan berikut ke kebijakan kunci kunci yang dikelola pelanggan. Ganti contoh ARN dengan ARN dari akun lain, pastikan untuk mengganti 111122223333 dengan ID akun aktual Akun AWS yang ingin Anda buat grup Auto Scaling. Ini memungkinkan Anda untuk memberikan pengguna IAM atau peran dalam izin akun yang ditentukan untuk membuat hibah untuk kunci menggunakan perintah CLI yang mengikuti. Namun, ini tidak dengan sendirinya memberi pengguna akses ke kunci.

    { "Sid": "Allow external account 111122223333 use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
    { "Sid": "Allow attachment of persistent resources in external account 111122223333", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*" }
  2. Kemudian, dari akun tempat Anda ingin membuat grup Auto Scaling, buat hibah yang mendelegasikan izin yang relevan ke peran terkait layanan yang sesuai. Elemen Grantee Principal pemberian izin adalah ARN dari peran terkait layanan yang sesuai. key-idItu adalah ARN kuncinya.

    Berikut ini adalah contoh perintah CLI create-grant yang memberikan peran terkait layanan yang AWSServiceRoleForAutoScalingdinamai dalam izin 111122223333 akun untuk menggunakan kunci terkelola pelanggan di akun. 444455556666

    aws kms create-grant \ --region us-west-2 \ --key-id arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d \ --grantee-principal arn:aws:iam::111122223333:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling \ --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

    Agar perintah ini berhasil, pengguna yang mengajukan permintaan harus memiliki izin untuk tindakan CreateGrant.

    Contoh berikut kebijakan IAM memungkinkan identitas IAM (pengguna atau peran) di akun 111122223333 untuk membuat hibah untuk kunci yang dikelola pelanggan di akun. 444455556666

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreationOfGrantForTheKMSKeyinExternalAccount444455556666", "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d" } ] }

    Untuk informasi selengkapnya tentang membuat hibah untuk kunci KMS yang berbeda Akun AWS, lihat Hibah AWS KMS di Panduan AWS Key Management Service Pengembang.

    penting

    Nama peran terkait layanan yang ditentukan sebagai kepala penerima hibah harus merupakan nama peran yang ada. Setelah membuat hibah, untuk memastikan bahwa hibah memungkinkan Amazon EC2 Auto Scaling menggunakan kunci KMS yang ditentukan, jangan hapus dan buat ulang peran terkait layanan.

Edit kebijakan utama di AWS KMS konsol

Contoh di bagian sebelumnya hanya menunjukkan cara menambahkan pernyataan ke kebijakan kunci, yang merupakan salah satu cara untuk mengubah kebijakan kunci. Cara termudah untuk mengubah kebijakan kunci adalah dengan menggunakan tampilan default AWS KMS konsol untuk kebijakan utama dan menjadikan identitas IAM (pengguna atau peran) sebagai salah satu pengguna utama untuk kebijakan kunci yang sesuai. Untuk informasi selengkapnya, lihat Menggunakan tampilan AWS Management Console default di Panduan AWS Key Management Service Pengembang.

penting

Berhati-hatilah. Pernyataan kebijakan tampilan default konsol menyertakan izin untuk melakukan AWS KMS Revoke operasi pada kunci yang dikelola pelanggan. Jika Anda memberikan Akun AWS akses ke kunci yang dikelola pelanggan di akun Anda, dan Anda secara tidak sengaja mencabut hibah yang memberi mereka izin ini, pengguna eksternal tidak dapat lagi mengakses data terenkripsi mereka atau kunci yang digunakan untuk mengenkripsi data mereka.