Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Praktik terbaik untuk IAM kebijakan
Mengamankan akses ke AWS KMS keys sangat penting untuk keamanan semua sumber AWS daya Anda. KMSkunci digunakan untuk melindungi banyak sumber daya paling sensitif di Anda Akun AWS. Luangkan waktu untuk merancang kebijakan utama, IAM kebijakan, hibah, dan kebijakan VPC titik akhir yang mengontrol akses ke kunci AndaKMS.
Dalam pernyataan IAM kebijakan yang mengontrol akses ke KMS kunci, gunakan prinsip yang paling tidak memiliki hak istimewa. Berikan IAM prinsipal hanya izin yang mereka butuhkan hanya pada KMS kunci yang harus mereka gunakan atau kelola.
Praktik terbaik berikut berlaku untuk IAM kebijakan yang mengontrol akses ke AWS KMS kunci dan alias. Untuk panduan praktik terbaik IAM kebijakan umum, lihat Praktik terbaik keamanan IAM di Panduan IAM Pengguna.
- Gunakan kebijakan kunci
-
Jika memungkinkan, berikan izin dalam kebijakan utama yang memengaruhi satu KMS kunci, bukan dalam IAM kebijakan yang dapat diterapkan ke banyak KMS kunci, termasuk yang ada di kunci lainnya Akun AWS. Ini sangat penting untuk izin sensitif seperti kms: PutKeyPolicy dan kms: ScheduleKeyDeletion tetapi juga untuk operasi kriptografi yang menentukan bagaimana data Anda dilindungi.
- Batasi CreateKey izin
-
Berikan izin untuk membuat kunci (kms: CreateKey) hanya untuk kepala sekolah yang membutuhkannya. Prinsipal yang membuat KMS kunci juga menetapkan kebijakan utamanya, sehingga mereka dapat memberi diri mereka sendiri dan orang lain izin untuk menggunakan dan mengelola KMS kunci yang mereka buat. Jika Anda mengizinkan izin ini, pertimbangkan untuk membatasinya menggunakan syarat kebijakan. Misalnya, Anda dapat menggunakan KeySpec kondisi kms: untuk membatasi izin ke kunci enkripsi KMS simetris.
- Tentukan KMS kunci dalam IAM kebijakan
-
Sebagai praktik terbaik, tentukan kunci ARN dari setiap KMS kunci yang izinnya berlaku dalam
Resource
elemen pernyataan kebijakan. Praktek ini membatasi izin untuk KMS kunci yang dibutuhkan kepala sekolah. Misalnya,Resource
elemen ini hanya mencantumkan KMS kunci yang perlu digunakan oleh prinsipal."Resource": [ "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321" ]
Saat menentukan KMS kunci tidak praktis, gunakan
Resource
nilai yang membatasi akses ke KMS kunci di wilayah Akun AWS dan terpercaya, seperti.arn:aws:kms:
Atau batasi akses ke KMS kunci di semua Wilayah (*) yang terpercaya Akun AWS, sepertiregion
:account
:key/*arn:aws:kms:*:
.account
:key/*Anda tidak dapat menggunakan ID kunci, nama alias, atau alias ARN untuk mewakili KMS kunci di
Resource
bidang kebijakan. IAM Jika Anda menentukan aliasARN, kebijakan berlaku untuk alias, bukan untuk kunci. KMS Untuk informasi tentang IAM kebijakan alias, lihat Mengontrol akses ke alias - Hindari “Resource”: “*” dalam suatu IAM kebijakan
-
Gunakan karakter kartubebas (*) dengan bijaksana. Dalam kebijakan kunci, karakter wildcard dalam
Resource
elemen mewakili KMS kunci yang dilampirkan kebijakan kunci. Namun dalam IAM kebijakan, karakter wildcard saja diResource
element ("Resource": "*"
) menerapkan izin ke semua KMS kunci di semua Akun AWS yang diizinkan oleh akun prinsipal untuk digunakan. Ini mungkin termasuk KMSkunci di lain Akun AWS, serta KMS kunci di akun kepala sekolah.Misalnya, untuk menggunakan KMS kunci di akun lain Akun AWS, prinsipal memerlukan izin dari kebijakan kunci KMS kunci di akun eksternal, dan dari IAM kebijakan di akun mereka sendiri. Misalkan akun arbitrer memberikan izin Akun AWS KMS: Dekripsi pada kunci mereka. KMS Jika demikian, IAM kebijakan di akun Anda yang memberikan
kms:Decrypt
izin peran pada semua KMS kunci ("Resource": "*"
) akan memenuhi IAM bagian dari persyaratan tersebut. Akibatnya, kepala sekolah yang dapat mengasumsikan peran itu sekarang dapat mendekripsi ciphertext menggunakan kunci di akun yang tidak tepercaya. KMS Entri untuk operasi mereka muncul di CloudTrail log kedua akun.Secara khusus, hindari penggunaan
"Resource": "*"
dalam pernyataan kebijakan yang memungkinkan API operasi berikut. Operasi ini dapat dipanggil pada KMS kunci lain Akun AWS. - Waktu menggunakan "Sumber Daya": "*"
-
Dalam IAM kebijakan, gunakan karakter wildcard dalam
Resource
elemen hanya untuk izin yang memerlukannya. Hanya izin berikut yang memerlukan elemen"Resource": "*"
.-
Izin untuk toko kunci khusus, seperti kms: CreateCustomKeyStore dan kms:. ConnectCustomKeyStore
catatan
Izin untuk operasi alias (kms: CreateAlias, kms: UpdateAlias, kms: DeleteAlias) harus dilampirkan ke alias dan kunci. KMS Anda dapat menggunakan
"Resource": "*"
dalam IAM kebijakan untuk mewakili alias dan KMS kunci, atau menentukan alias dan KMS kunci dalam elemen.Resource
Sebagai contoh, lihat Mengontrol akses ke alias.
Contoh dalam topik ini memberikan lebih banyak informasi dan panduan untuk merancang IAM kebijakan untuk KMS kunci. Untuk praktik IAM terbaik untuk semua AWS sumber daya, lihat Praktik terbaik keamanan IAM di Panduan IAM Pengguna.