• AWS Systems Manager CloudWatch Dasbor tidak akan lagi tersedia setelah 30 April 2026. Pelanggan dapat terus menggunakan CloudWatch konsol Amazon untuk melihat, membuat, dan mengelola dasbor Amazon CloudWatch mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat dokumentasi CloudWatch Dasbor Amazon.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pengaturan Penyimpanan Parameter
Sebelum menyiapkan parameter diParameter Store, konfigurasikan kebijakan AWS Identity and Access Management (IAM) yang memberikan izin kepada prinsipal di akun Anda untuk melakukan tindakan yang Anda tentukan.
Di bagian ini, Anda mempelajari cara mengonfigurasi kebijakan ini secara manual menggunakan konsol IAM, dan cara menetapkannya ke pengguna dan grup pengguna. Anda juga dapat membuat dan menetapkan kebijakan untuk mengontrol tindakan parameter mana yang dapat dijalankan pada node terkelola.
Bagian ini juga menjelaskan cara membuat EventBridge aturan Amazon yang memungkinkan Anda menerima pemberitahuan tentang perubahan parameter Manajer Sistem. Anda dapat menggunakan EventBridge aturan untuk memanggil tindakan lain AWS berdasarkan perubahan diParameter Store.
Daftar Isi
Mengelola akses ke Penyimpanan Parameter parameter menggunakan kebijakan IAM
Prinsip IAM yang mengakses AWS Systems Manager parameter harus memiliki izin untuk melakukan tindakan SSM yang diperlukan. Prinsipal dapat berupa pengguna IAM, peran IAM, profil instans Amazon EC2, peran eksekusi Lambda, peran tugas Amazon ECS, peran CodeBuild layanan, atau peran layanan lainnya. AWS
Tabel berikut menjelaskan izin IAM yang diperlukan untuk Parameter Store tindakan yang berbeda.
| Tindakan | Hak istimewa IAM yang diperlukan | Informasi referensi |
|---|---|---|
| Membuat atau memperbarui parameter | ssm:PutParameter |
PutParameter |
| Ambil satu parameter | ssm:GetParameter |
GetParameter |
| Ambil beberapa parameter bernama | ssm:GetParameters |
GetParameters |
| Ambil parameter di bawah jalur | ssm:GetParametersByPath |
GetParametersByPath |
| Melihat metadata parameter | ssm:DescribeParameters |
DescribeParameters |
| Lihat riwayat versi parameter | ssm:GetParameterHistory |
GetParameterHistory |
| Hapus satu parameter | ssm:DeleteParameter |
DeleteParameter |
| Hapus beberapa parameter | ssm:DeleteParameters |
DeleteParameters |
Saat menggunakan kebijakan IAM untuk memberikan akses ke parameter Manajer Sistem, sebaiknya buat dan menggunakan kebijakan IAM yang membatasi. Misalnya, kebijakan berikut memungkinkan prinsipal untuk memanggil operasi DescribeParameters dan GetParameters API untuk kumpulan sumber daya terbatas. Kepala sekolah dapat memperoleh informasi tentang dan menggunakan semua parameter yang dimulai denganprod-*.
catatan
Kebijakan sebelumnya mengizinkan ssm:GetParameters tetapi tidak memungkinkan tindakan pengambilan lainnya. Parameter Storemengotorisasi setiap operasi pengambilan terhadap tindakan IAMnya sendiri, sehingga mengizinkan atau menolak satu tindakan tidak memengaruhi yang lain. Sebelum Anda mengandalkan kebijakan untuk membatasi parameter mana yang dapat dibaca oleh kepala sekolah, lihat Bagaimana Penyimpanan Parameter mengotorisasi pengambilan parameter danMembatasi akses ke parameter dan jalur tertentu.
penting
Parameter Storemengotor GetParametersByPath isasi operasi terhadap jalur yang Anda tentukan dalam permintaan, bukan terhadap setiap parameter yang dikembalikan operasi. Seorang kepala sekolah yang diizinkan GetParametersByPath untuk memanggil jalur /a menerima setiap parameter di bawah jalur itu, termasuk/a/b. Ini benar bahkan jika kebijakan yang sama secara eksplisit menolak akses /a/b untuk tindakan lain.
Untuk mencegah parameter dikembalikan olehGetParametersByPath, tolak ssm:GetParametersByPath tindakan pada setiap jalur leluhur yang dapat menyertakan parameter dalam hasilnya. Misalnya, untuk /a/b mencegah dikembalikan, tolak ssm:GetParametersByPath untuk keduanya /a dan/.
Untuk administrator tepercaya, Anda dapat memberikan akses ke semua operasi API parameter Systems Manager dengan menggunakan kebijakan yang mirip dengan contoh berikut. Kebijakan ini memberikan pengguna akses penuh ke semua parameter produksi yang diawali dengan dbserver-prod-*.
Menolak izin
Setiap API bersifat unik dan memiliki operasi dan izin yang berbeda yang dapat Anda izinkan atau tolak secara individual. Penolakan eksplisit dalam kebijakan apa pun akan menimpa izin yang diberikan.
penting
Karena setiap operasi diotorisasi terhadap tindakan IAMnya sendiri, menolak tindakan tunggal tidak mencegah prinsipal mengambil parameter yang sama melalui operasi lain. Misalnya, menyangkal ssm:GetParameter saja tidak berpengaruh padassm:GetParameters,ssm:GetParameterHistory, ataussm:GetParametersByPath. Selalu menyangkal setiap tindakan yang dapat mengembalikan nilai. Untuk deskripsi lengkap tentang perilaku ini, lihatBagaimana Penyimpanan Parameter mengotorisasi pengambilan parameter.
catatan
Kunci default AWS Key Management Service (AWS KMS) memiliki Decrypt izin untuk semua prinsipal IAM di dalam. Akun AWS Jika Anda ingin tingkat akses yang berbeda ke SecureString parameter di akun Anda, kami tidak menyarankan Anda menggunakan kunci default. Mem kms:Decrypt batasi kunci yang dikelola pelanggan mencegah dekripsi SecureString nilai melalui operasi pengambilan apa pun. Untuk informasi selengkapnya, lihat Membatasi dekripsi nilai SecureString parameter.
Keempat nama tindakan pengambilan dimulai denganGetParameter, jadi entri tunggal ssm:GetParameter* mencakupssm:GetParameter,, ssm:GetParametersssm:GetParameterHistory, danssm:GetParametersByPath. Contoh berikut menggunakan pola ini untuk menolak keempat tindakan untuk semua parameter dimulai denganprod-*.
catatan
Dalam contoh sebelumnya, penolakan aktif hanya ssm:GetParametersByPath berlaku untuk panggilan yang meminta pencocokan jalurprod-*. Itu tidak mencegah prod-* parameter dikembalikan oleh panggilan yang meminta jalur leluhur. Untuk menutup celah itu, tol ssm:GetParametersByPath ak juga di jalur leluhur. Untuk informasi selengkapnya, lihat Membatasi akses ke parameter dan jalur tertentu.
Contoh berikut menunjukkan cara menolak beberapa perintah sambil mengizinkan pengguna untuk melakukan perintah lain pada semua parameter yang diawali dengan prod-*.
catatan
Riwayat parameter mencakup semua versi parameter, termasuk yang saat ini digunakan. Oleh karena itu, jika pengguna ditolak izin untuk GetParameter, GetParameters, dan GetParametersByPath namun diberikan izin untuk GetParameterHistory, mereka dapat melihat parameter saat ini, termasuk parameter SecureString, menggunakan GetParameterHistory.
Perilaku yang sama berlaku untuk penghapusan. ssm:DeleteParametersdiotorisasi secara independen darissm:DeleteParameter, jadi menyangkal saja ssm:DeleteParameter tidak mencegah prinsipal menghapus parameter dengan DeleteParameters operasi. Tolak kedua tindakan, atau gunakan polanyassm:DeleteParameter*.
Mengenkripsi dan mendekripsi parameter menggunakan AWS KMS keys
Parameter StoreSecureStringparameter menggunakan AWS KMS kunci untuk enkripsi. AWS KMS mengenkripsi nilai dengan menggunakan kunci Kunci yang dikelola AWS atau kunci yang dikelola pelanggan. Untuk informasi selengkapnya tentang AWS KMS dan AWS KMS key, lihat Panduan Peng AWS Key Management Service embang .
Semua pengguna dalam akun pelanggan memiliki akses ke kunci terkel AWS ola default. Anda dapat menemukan Nama Sumber Daya Amazon (ARN) dari kunci default di AWS KMS konsol pada halaman kunci aws/ssm di kolom Alias. Anda mungkin ingin menggunakan kunci default untuk mengenkripsi SecureString parameter sambil mencegah pengguna bekerja dengan SecureString parameter. Dalam hal ini, kebijakan IAM harus secara eksplisit menolak akses ke kunci default, seperti yang ditunjukkan dalam contoh kebijakan berikut.
Saat menggunakan kunci yang dikelola pelanggan, kebijakan IAM yang memberikan akses utama ke parameter atau jalur parameter harus memberikan kms:Encrypt izin eksplisit untuk kunci tersebut. Misalnya, kebijakan berikut memungkinkan prinsipal untuk membuat, memperbarui, dan melihat SecureString parameter yang dimulai dengan prod- Wilayah AWS dan yang ditentukan Akun AWS.
catatan
Iz kms:GenerateDataKey in diperlukan untuk membuat parameter lanjutan terenkripsi menggunakan kunci yang dikelola pelanggan yang ditentukan.
Jika Anda memerlukan kontrol akses yang halus atas SecureString parameter di akun Anda, gunakan kunci yang dikelola pelanggan untuk melindungi dan membatasi akses ke parameter ini. Kami juga merekomendasikan penggunaan AWS CloudTrail untuk memantau aktivitas SecureString parameter.
Untuk informasi selengkapnya, lihat topik berikut:
-
Logika evaluasi kebijakan dalam Panduan Pengguna IAM
-
Menggunakan kebijakan kunci dalam AWS KMS dalam Panduan Developer AWS Key Management Service
-
Melihat CloudTrail acara dengan riwayat acara di Panduan AWS CloudTrail Pengguna
Mengizinkan node terkelola untuk mengakses parameter tertentu
Untuk mengontrol Parameter Store parameter mana yang dapat diambil oleh node terkelola, Anda dapat melampirkan kebijakan IAM ke peran instance. Jika Anda memilih jenis SecureString parameter saat Anda membuat parameter Anda, Manajer Sistem menggunakan AWS KMS untuk mengenkripsi nilai parameter. Anda dapat melihatnya Kunci yang dikelola AWS dengan menjalankan perintah berikut dari AWS CLI.
aws kms describe-key --key-id alias/aws/ssm
Contoh berikut memungkinkan node untuk mendapatkan nilai parameter hanya untuk parameter yang dimulai denganprod-. Jika parameter adalah SecureString parameter, maka node mendekripsi string menggunakan AWS KMS.
catatan
Kebijakan instans, seperti dalam contoh berikut, ditugaskan untuk peran instans tersebut dalam IAM. Untuk informasi lebih lanjut tentang mengkonfigurasi akses ke fitur Systems Manager, termasuk cara menetapkan kebijakan untuk pengguna dan instans, lihat Mengelola instans EC2 dengan System Manager.