Buat CloudFormation template AWS yang berisi aturan terkelola AWS Config menggunakan Troposfer - AWS Prescriptive Guidance

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

Buat CloudFormation template AWS yang berisi aturan terkelola AWS Config menggunakan Troposfer

Lucas Nation dan Freddie Wilson, Amazon Web Services

Ringkasan

Banyak organisasi menggunakan aturan terkelola AWS Config untuk mengevaluasi kepatuhan sumber daya Amazon Web Services (AWS) mereka terhadap praktik terbaik umum. Namun, aturan ini dapat memakan waktu lama untuk dipelihara dan pola ini membantu Anda memanfaatkan Troposfer, pustaka Python, untuk membuat dan mengelola aturan terkelola AWS Config.

Pola ini membantu Anda mengelola aturan terkelola AWS Config dengan menggunakan skrip Python untuk mengonversi spreadsheet Microsoft Excel yang berisi aturan terkelola AWS menjadi templat AWS. CloudFormation Troposfer bertindak sebagai infrastruktur sebagai kode (IAc) dan ini berarti Anda dapat memperbarui spreadsheet Excel dengan aturan terkelola, alih-alih menggunakan file berformat JSON atau YAML. Anda kemudian menggunakan template untuk meluncurkan CloudFormation tumpukan AWS yang membuat dan memperbarui aturan terkelola di akun AWS Anda.

CloudFormation Template AWS mendefinisikan setiap aturan yang dikelola AWS Config dengan menggunakan spreadsheet Excel dan membantu Anda menghindari pembuatan aturan individual secara manual di AWS Management Console. Skrip default setiap parameter aturan terkelola ke kamus kosong dan default cakupan dari. ComplianceResourceTypes THE_RULE_IDENTIFIER.template file Untuk informasi selengkapnya tentang pengenal aturan, lihat Membuat aturan terkelola AWS Config dengan templat AWS dalam CloudFormation dokumentasi AWS Config.

Prasyarat dan batasan

Prasyarat

  • Akun AWS yang aktif.

  • Keakraban dengan menggunakan CloudFormation templat AWS untuk membuat aturan terkelola AWS Config. Untuk informasi selengkapnya tentang hal ini, lihat Membuat aturan terkelola AWS Config dengan CloudFormation templat AWS dalam dokumentasi AWS Config.  

  • Python 3, diinstal dan dikonfigurasi. Untuk informasi lebih lanjut tentang ini, lihat dokumentasi Python.

  • Lingkungan pengembangan terintegrasi (IDE) yang ada.  

  • Identifikasi unit organisasi Anda (OUs) dalam kolom dalam contoh spreadsheet excel_config_rules.xlsx Excel (terlampir).

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Perbarui contoh spreadsheet Excel.

Unduh contoh spreadsheet excel_config_rules.xlsx Excel (terlampir) dan beri label sebagai aturan Implemented terkelola AWS Config yang ingin Anda gunakan. 

Aturan yang ditandai sebagai Implemented akan ditambahkan ke CloudFormation template AWS.

Developer

(Opsional) Perbarui file config_rules_params.json dengan parameter aturan AWS Config.

Beberapa aturan yang dikelola AWS Config memerlukan parameter dan harus diteruskan ke skrip Python sebagai file JSON dengan menggunakan opsi. --param-file Misalnya, aturan access-keys-rotated terkelola menggunakan maxAccessKeyAge parameter berikut:

{ "access-keys-rotated": { "InputParameters": { "maxAccessKeyAge": 90 } } }

Dalam parameter sampel ini, maxAccessKeyAge diatur ke 90 hari. Skrip membaca file parameter dan menambahkan apa pun InputParameters yang ditemukannya.

Developer

(Opsional) Perbarui file config_rules_params.json dengan AWS Config. ComplianceResourceTypes

Secara default, skrip Python mengambil template yang ditentukan ComplianceResourceTypes AWS. Jika Anda ingin mengganti cakupan aturan terkelola AWS Config tertentu, maka Anda harus meneruskannya ke skrip Python sebagai file JSON menggunakan opsi. --param-file

Misalnya, kode contoh berikut menunjukkan bagaimana ComplianceResourceTypes for ec2-volume-inuse-check diatur ke ["AWS::EC2::Volume"] daftar:

{ "ec2-volume-inuse-check": { "Scope": { "ComplianceResourceTypes": [ "AWS::EC2::Volume" ] } } }
Developer
TugasDeskripsiKeterampilan yang dibutuhkan

Instal paket pip dari file requirements.txt.

Download requirements.txt file (terlampir) dan jalankan perintah berikut di IDE Anda untuk menginstal paket Python:

pip3 install -r requirements.txt

Developer

Jalankan skrip Python.

  1. Unduh aws_config_rules.py file (terlampir) ke mesin lokal Anda.

  2. catatan

    Jalankan - python3 aws_config_rules.py --ou <OU_NAME> perintah.: --ou mendefinisikan kolom OU mana yang akan dipilih di spreadsheet Excel.

Anda juga dapat menambahkan parameter opsional berikut:

  • --config-rule-option— Mendefinisikan aturan untuk memilih dari spreadsheet Excel. Defaultnya adalah Implemented parameternya.

  • --excel-file— Jalur untuk spreadsheet Excel. Nilai default-nya aws_config_rules.xlsx.

  • --param-file— Jalur file parameter JSON. Nilai default-nya config_rules_params.json.

  • --max-execution-frequency— Menentukan seberapa sering aturan terkelola AWS Config dievaluasi. Pilihannya adalahOne_Hour,Three_Hours,Six_Hours,Twelve_Hours, atauTwentyFour_Hours. Nilai default-nya TwentyFour_Hours.

Developer
TugasDeskripsiKeterampilan yang dibutuhkan

Luncurkan CloudFormation tumpukan AWS.

  1. Masuk ke AWS Management Console, buka CloudFormation konsol AWS, lalu pilih Buat tumpukan.

  2. Pada halaman Tentukan templat, pilih Unggah file templat lalu unggah CloudFormation templat AWS Anda. 

  3. Tentukan nama tumpukan lalu pilih Berikutnya.

  4. Tentukan tag dan kemudian pilih Berikutnya.

  5. Pilih Buat tumpukan.

Developer

Lampiran

Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip