Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kontrol penemuan dan penggunaan AMI di Amazon EC2 dengan AMI yang Diizinkan
Untuk mengontrol penemuan dan penggunaan Amazon Machine Images (AMI) oleh pengguna di situs Anda Akun AWS, Anda dapat menggunakan fitur AMI yang Diizinkan. Anda menentukan kriteria yang harus dipenuhi AMI agar terlihat dan tersedia di dalam akun Anda. Ketika kriteria diaktifkan, pengguna yang meluncurkan instans hanya akan melihat dan memiliki akses ke AMI yang sesuai dengan kriteria yang ditentukan. Misalnya, Anda dapat menentukan daftar penyedia AMI tepercaya sebagai kriteria, dan hanya AMI dari penyedia ini yang akan terlihat dan tersedia untuk digunakan.
Sebelum mengaktifkan setelan AMI yang Diizinkan, Anda dapat mengaktifkan mode audit untuk melihat pratinjau AMI mana yang akan atau tidak akan terlihat dan tersedia untuk digunakan. Ini memungkinkan Anda menyempurnakan kriteria sesuai kebutuhan untuk memastikan bahwa hanya AMI yang dituju yang terlihat dan tersedia bagi pengguna di akun Anda. Selain itu, gunakan perintah describe-instance-image-metadata untuk menemukan instance yang diluncurkan dengan AMI yang tidak memenuhi kriteria yang ditentukan. Informasi ini dapat memandu keputusan Anda untuk memperbarui konfigurasi peluncuran Anda untuk menggunakan AMI yang sesuai (misalnya, menentukan AMI yang berbeda dalam template peluncuran) atau menyesuaikan kriteria Anda untuk mengizinkan AMI ini.
Anda menentukan setelan AMI yang Diizinkan di tingkat akun, baik secara langsung di akun atau dengan menggunakan kebijakan deklaratif. Pengaturan ini harus dikonfigurasi di setiap Wilayah AWS tempat Anda ingin mengontrol penggunaan AMI. Menggunakan kebijakan deklaratif memungkinkan Anda menerapkan pengaturan di beberapa Wilayah secara bersamaan, serta di beberapa akun secara bersamaan. Saat kebijakan deklaratif digunakan, Anda tidak dapat mengubah pengaturan secara langsung di dalam akun. Topik ini menjelaskan cara mengonfigurasi pengaturan secara langsung di dalam akun. Untuk informasi tentang penggunaan kebijakan deklaratif, lihat Kebijakan deklaratif di Panduan AWS Organizations Pengguna.
catatan
Fitur AMI yang Diizinkan hanya mengontrol penemuan dan penggunaan AMI publik atau AMI yang dibagikan dengan akun Anda. Itu tidak membatasi AMI yang dimiliki oleh akun Anda. Terlepas dari kriteria yang Anda tetapkan, AMI yang dibuat oleh akun Anda selalu dapat ditemukan dan digunakan oleh pengguna di akun Anda.
Manfaat utama dari AMI yang Diizinkan
-
Kepatuhan dan keamanan: Pengguna hanya dapat menemukan dan menggunakan AMI yang memenuhi kriteria yang ditentukan, sehingga mengurangi risiko penggunaan AMI yang tidak sesuai.
-
Manajemen yang efisien: Dengan mengurangi jumlah AMI yang diizinkan, mengelola yang tersisa menjadi lebih mudah dan lebih efisien.
-
Implementasi tingkat akun terpusat: Konfigurasikan setelan AMI yang Diizinkan di tingkat akun, baik secara langsung di dalam akun atau melalui kebijakan deklaratif. Ini menyediakan cara terpusat dan efisien untuk mengontrol penggunaan AMI di seluruh akun.
Daftar Isi
Cara kerja AMI yang Diizinkan
Untuk mengontrol AMI mana yang dapat ditemukan dan digunakan di akun Anda, Anda menentukan serangkaian kriteria yang digunakan untuk mengevaluasi AMI. Kriteria terdiri dari satu atau lebih ImageCriterion seperti yang ditunjukkan pada diagram berikut. Penjelasan mengikuti diagram.
Konfigurasi memiliki tiga level:
-
1 — Nilai parameter
-
Multi-value Parameter:
-
ImageProviders -
ImageNames -
MarketplaceProductCodesAMI dapat mencoco kkan nilai apa pun dalam parameter yang diizinkan.
Contoh:
ImageProviders=amazonOR akun111122223333ATAU akun444455556666(Logika evaluasi untuk nilai parameter tidak ditampilkan dalam diagram.) -
ImageWatermarks
-
-
Single-value Parameter:
-
CreationDateCondition -
DeprecationTimeCondition
-
-
-
2 —
ImageCriterion-
Kelompokkan beberapa parameter dengan logika AND.
-
AMI harus cocok dengan semua parameter dalam
ImageCriterionuntuk diizinkan. -
Contoh:
ImageProviders=amazonANDCreationDateCondition= 300 hari atau kurang
-
-
3 —
ImageCriteria-
Kelompokkan beberapa
ImageCriteriondengan logika OR. -
AMI dapat mencocokkan
ImageCriterionapa pun yang diizinkan. -
Membentuk konfigurasi lengkap yang digunakan untuk mengevaluasi AMI.
-
Topik
Parameter AMI yang diizinkan
Parameter berikut dapat dikonfigurasi untuk membuatImageCriterion:
ImageProviders-
Penyedia AMI yang AMI-nya diizinkan.
Nilai yang valid adalah alias yang ditentukan oleh AWS, dan Akun AWS ID, sebagai berikut:
-
amazon— Alias yang mengidentifikasi AMI yang dibuat oleh Amazon atau penyedia terverifikasi -
aws-marketplace— Alias yang mengidentifikasi AMI yang dibuat oleh penyedia terverifikasi di AWS Marketplace -
aws-backup-vault— Alias yang mengidentifikasi AMI cadangan yang berada di akun brankas AWS Backup yang memiliki celah udara secara logis. Jika Anda menggunakan fitur AWS Backup secara logis air-gap vault, pastikan alias ini disertakan sebagai penyedia AMI. -
Akun AWS ID — Satu atau lebih ID 12 digit Akun AWS
-
none— Menunjukkan bahwa hanya AMI yang dibuat oleh akun Anda yang dapat ditemukan dan digunakan. AMI publik atau bersama tidak dapat ditemukan dan digunakan. Ketika ditentukan, tidak ada kriteria lain yang dapat ditentukan.
-
ImageNames-
Nama AMI yang diizinkan, menggunakan kecocokan yang tepat atau wildcard (
?atau*). MarketplaceProductCodes-
Kode AWS Marketplace produk untuk AMI yang diizinkan.
CreationDateCondition-
Usia maksimum untuk AMI yang diizinkan.
DeprecationTimeCondition-
Periode maksimum sejak penghentian penggunaan untuk AMI yang diizinkan.
ImageWatermarks-
Daftar filter watermark. Filter mengizinkan AMI jika ada tanda air pada AMI yang cocok dengan entri filter apa pun (OR logika). Setiap filter dapat menyertakan bidang berikut:
-
WatermarkKey— Tombol tanda air untuk mencocokkan (account-id:watermark-name) -
SourceImageRegion— Wilayah AMI tempat Anda awalnya melampirkan tanda air -
MaximumDaysSinceSourceImageCreated— Usia maksimum sumber AMI saat Anda menerapkan tanda air -
MaximumDaysSinceWatermarkCreated— Jumlah hari maksimum sejak Anda menerapkan tanda air
-
Untuk nilai dan batasan yang valid untuk setiap kriteria, lihat ImageCriterionRequest di Refer ensi API Amazon EC2.
Konfigurasi AMI yang diizinkan
Konfigurasi inti untuk AMI yang Diizinkan adalah ImageCriteria konfigurasi yang menentukan kriteria untuk AMI yang diizinkan. Struktur JSON berikut menunjukkan parameter yang dapat ditentukan:
{ "State": "enabled" | "disabled" | "audit-mode", "ImageCriteria" : [ { "ImageProviders": ["string",...], "MarketplaceProductCodes": ["string",...], "ImageNames":["string",...], "CreationDateCondition" : { "MaximumDaysSinceCreated": integer }, "DeprecationTimeCondition" : { "MaximumDaysSinceDeprecated": integer }, "ImageWatermarks": [ { "WatermarkKey": "string", "SourceImageRegion": "string", "MaximumDaysSinceSourceImageCreated": integer, "MaximumDaysSinceWatermarkCreated": integer },... ] }, ... }
ImageCriteria contoh
ImageCriteriaContoh berikut mengkonfigurasi limaImageCriterion. AMI diperbolehkan jika cocok dengan salah satu dari iniImageCriterion. Untuk informasi tentang bagaimana kriteria dievaluasi, lihatBagaimana kriteria dievaluasi.
{ "ImageCriteria": [ // ImageCriterion 1: Allow AWS Marketplace AMIs with product code "abcdefg1234567890" { "MarketplaceProductCodes": [ "abcdefg1234567890" ] }, // ImageCriterion 2: Allow AMIs from providers whose accounts are // "123456789012" OR "123456789013" AND AMI age is less than 300 days { "ImageProviders": [ "123456789012", "123456789013" ], "CreationDateCondition": { "MaximumDaysSinceCreated":300} }, // ImageCriterion 3: Allow AMIs from provider whose account is "123456789014" // AND with names following the pattern "golden-ami-*" { "ImageProviders": [ "123456789014" ], "ImageNames": [ "golden-ami-*" ] }, // ImageCriterion 4: Allow AMIs from Amazon or verified providers // AND which aren't deprecated { "ImageProviders": [ "amazon" ], "DeprecationTimeCondition": { "MaximumDaysSinceDeprecated":0} }, // ImageCriterion 5: Allow AMIs that carry an approved watermark // from account "111122223333" AND the watermark was applied less than 90 days ago { "ImageWatermarks": [ { "WatermarkKey": "111122223333:prod-baseline", "MaximumDaysSinceWatermarkCreated":90} ] } ] }
Bagaimana kriteria dievaluasi
Tabel berikut menjelaskan aturan evaluasi yang menentukan apakah AMI diizinkan, menunjukkan bagaimana OR operator AND or diterapkan di setiap level:
| Tingkat evaluasi | Operator | Persyaratan untuk menjadi AMI yang Diizinkan |
|---|---|---|
Nilai parameter untukImageProviders,ImageNames,MarketplaceProductCodes, dan ImageWatermarks |
OR |
AMI harus cocok dengan setidaknya satu nilai di setiap daftar parameter |
ImageCriterion |
AND |
AMI harus cocok dengan semua parameter di masing-masing ImageCriterion |
ImageCriteria |
OR |
AMI harus cocok dengan salah satu ImageCriterion |
Dengan menggunakan aturan evaluasi sebelumnya, mari kita lihat bagaimana menerapkannya padaImageCriteria contoh:
-
ImageCriterion1: Mengizinkan AMI yang memiliki kode AWS Marketplace produkabcdefg1234567890OR -
ImageCriterion2: Mengizinkan AMI yang memenuhi kedua kriteria ini:-
Dimiliki oleh salah satu akun
123456789012OR123456789013-
AND
-
-
Dibuat dalam 300 hari terakhir
OR -
-
ImageCriterion3: Mengizinkan AMI yang memenuhi kedua kriteria ini:-
Dimiliki oleh akun
123456789014-
AND
-
-
Dinamai dengan pola
golden-ami-*
OR -
-
ImageCriterion4: Mengizinkan AMI yang memenuhi kedua kriteria ini:-
Diterbitkan oleh Amazon atau penyedia terverifikasi (ditentukan oleh
amazonalias)-
AND
-
-
Tidak usang (hari maksimum sejak penghentian adalah)
0
OR -
-
ImageCriterion5: Mengizinkan AMI yang membawa pencocokan tanda air:-
Tombol tanda air
111122223333:prod-baseline-
AND
-
-
Anda menerapkan tanda air kurang dari 90 hari yang lalu
-
Batas
ImageCriteriaDapat mencakup hingga:
-
10
ImageCriterion
Masing-masing ImageCriterion dapat mencakup hingga:
-
200 nilai untuk
ImageProviders -
50 nilai untuk
ImageNames -
50 nilai untuk
MarketplaceProductCodes -
50 nilai untuk
ImageWatermarks
Contoh batas
Menggunakan yang sebelumnyaImageCriteria contoh:
-
Ada 5
ImageCriterion. Hingga 5 lagi dapat ditambahkan ke permintaan untuk mencapai batas 10. -
Pada yang pertama
ImageCriterion, ada 1 nilai untukMarketplaceProductCodes. Hingga 49 lebih dapat ditambahkanImageCriterionke ini untuk mencapai batas 50. -
Yang kedua
ImageCriterion, ada 2 nilai untukImageProviders. Hingga 198 lebih dapat ditambahkanImageCriterionke ini untuk mencapai batas 200. -
Yang ketiga
ImageCriterion, ada 1 nilai untukImageNames. Hingga 49 lebih dapat ditambahkanImageCriterionke ini untuk mencapai batas 50.
Operasi AMI yang diizinkan
Fitur AMI yang Diizinkan memiliki tiga status operasional untuk mengelola kriteria gambar: diaktifkan, dinonaktifkan, dan mode audit. Ini memungkinkan Anda untuk mengaktifkan atau menonaktifkan kriteria gambar, atau meninjaunya sesuai kebutuhan.
Diaktifkan
Saat AMI yang Diizinkan diaktifkan:
-
Yang
ImageCriteriaditerapkan. -
Hanya AMI yang diizinkan yang dapat ditemukan di konsol EC2 dan oleh API yang menggunakan gambar (misalnya, yang menjelaskan, menyalin, menyimpan, atau melakukan tindakan lain yang menggunakan gambar).
-
Instans hanya dapat diluncurkan menggunakan AMI yang diizinkan.
Nonaktif
Saat AMI yang Diizinkan dinonaktifkan:
-
Itu
ImageCriteriatidak diterapkan. -
Tidak ada batasan yang ditempatkan pada kemampuan penemuan atau penggunaan AMI.
Mode audit
Dalam mode audit:
-
Ini
ImageCriteriaditerapkan, tetapi tidak ada batasan yang ditempatkan pada kemampuan penemuan atau penggunaan AMI. -
Di konsol EC2, untuk setiap AMI, bidang gambar yang diizinkan menampilkan Ya atau Tidak untuk menunjukkan apakah AMI akan dapat ditemukan dan tersedia bagi pengguna di akun saat AMI yang Diizinkan diaktifkan.
-
Di baris perintah, respons untuk
describe-imageoperasi termasuk"ImageAllowed": trueatau"ImageAllowed": falseuntuk menunjukkan apakah AMI akan dapat ditemukan dan tersedia untuk pengguna di akun ketika AMI yang Diizinkan diaktifkan. -
Di konsol EC2, Katalog AMI menampilkan Tidak diizinkan di sebelah AMI yang tidak dapat ditemukan atau tersedia bagi pengguna di akun saat AMI yang Diizinkan diaktifkan.
Praktik terbaik untuk menerapkan AMI yang Diizinkan
Saat menerapkan AMI yang Diizinkan, pertimbangkan praktik terbaik ini untuk memastikan transisi yang lancar dan meminimalkan potensi gangguan pada AWS lingkungan Anda.
-
Aktifkan mode audit
Mulailah dengan mengaktifkan AMI yang Diizinkan dalam mode audit. Status ini memungkinkan Anda untuk melihat AMI mana yang akan terpengaruh oleh kriteria Anda tanpa benar-benar membatasi akses, memberikan periode evaluasi bebas risiko.
-
Tetapkan kriteria AMI yang Diizinkan
Tentukan dengan cermat penyedia AMI mana yang selaras dengan kebijakan keamanan, persyaratan kepatuhan, dan kebutuhan operasional organisasi Anda.
catatan
Saat menggunakan layanan AWS terkelola, seperti Amazon ECS, Amazon EKS, atau Instans Terkelola AWS Lambda, sebaiknya tentukan
amazonalias untuk mengizinkan AMI yang dibuat oleh. AWS Layanan ini bergantung pada Amazon-published AMI untuk meluncurkan instans.Berhati-hatilah saat menetapkan
CreationDateConditionbatasan untuk AMI apa pun. Menyetel kondisi tanggal yang terlalu ketat (misalnya, AMI harus berusia kurang dari 5 hari) dapat menyebabkan kegagalan peluncuran instans jika AMI, baik dari penyedia AWS atau penyedia lain, tidak diperbarui dalam jangka waktu yang Anda tentukan.Kami merekomendasikan memasangkan
ImageNamesdenganImageProvidersuntuk kontrol dan spesifisitas yang lebih baik. MenggunakanImageNamessaja mungkin tidak secara unik mengidentifikasi AMI. -
Periksa dampak pada proses bisnis yang diharapkan
Anda dapat menggunakan konsol atau CLI untuk mengidentifikasi instans apa pun yang diluncurkan dengan AMI yang tidak memenuhi kriteria yang ditentukan. Informasi ini dapat memandu keputusan Anda untuk memperbarui konfigurasi peluncuran Anda untuk menggunakan AMI yang sesuai (misalnya, menentukan AMI yang berbeda dalam template peluncuran) atau menyesuaikan kriteria Anda untuk mengizinkan AMI ini.
Konsol: Gunakan AWS Config aturan ec2-instance-launched-with-allowed-ami untuk memeriksa apakah instans yang sedang berjalan atau dihentikan diluncurkan dengan AMI yang memenuhi kriteria AMI yang Diizinkan. Aturannya adalah NON_COM PLIANT jika AMI tidak memenuhi kriteria AMI yang Diizinkan, dan COMPLIANT jika memenuhi kriteria AMI. Aturan hanya beroperasi jika setelan AMI yang Diizinkan disetel ke mode diaktifkan atau audit.
CLI: Jalankan perintah describe-instance-image-metadata dan filter respons untuk mengidentifikasi instans apa pun yang diluncurkan dengan AMI yang tidak memenuhi kriteria yang ditentukan.
Untuk instruksi konsol dan CLI, lihatMenemukan instans yang diluncurkan dari AMI yang tidak diizinkan.
-
Aktifkan AMI yang Diizinkan
Setelah Anda mengonfirmasi bahwa kriteria tidak akan mempengaruhi proses bisnis yang diharapkan, aktifkan AMI yang Diizinkan.
-
Peluncuran instance monitor
Terus memantau peluncuran instans dari AMI di seluruh aplikasi Anda dan AWS layanan terkelola yang Anda gunakan, seperti Amazon EMR, Amazon ECR, Amazon EKS, dan AWS Elastic Beanstalk. Periksa masalah yang tidak terduga dan buat penyesuaian yang diperlukan pada kriteria AMI yang Diizinkan.
-
Pilot AMI baru
Untuk menguji AMI pihak ketiga yang tidak sesuai dengan setelan AMI yang Diizinkan saat ini, rekom AWS endasikan pendekatan berikut:
-
Gunakan yang terpisah Akun AWS: Buat akun tanpa akses ke sumber daya penting bisnis Anda. Pastikan bahwa setelan AMI yang Diizinkan tidak diaktifkan di akun ini, atau bahwa AMI yang ingin Anda uji diizinkan secara eksplisit, sehingga Anda dapat mengujinya.
-
Uji di Wilayah AWS daerah lain: Gunakan Wilayah tempat AMI pihak ketiga tersedia, tetapi di mana Anda belum mengaktifkan setelan AMI yang Diizinkan.
Pendekatan ini membantu memastikan sumber daya penting bisnis Anda tetap aman saat Anda menguji AMI baru.
-
Izin IAM yang diperlukan
Untuk menggunakan fitur AMI yang Diizinkan, Anda memerlukan izin IAM berikut:
-
GetAllowedImagesSettings -
EnableAllowedImagesSettings -
DisableAllowedImagesSettings -
ReplaceImageCriteriaInAllowedImagesSettings