Dapatkan nilai plaintext dari Systems Manager Parameter Store - AWS CloudFormation

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

Dapatkan nilai plaintext dari Systems Manager Parameter Store

Saat membuat CloudFormation template, Anda mungkin ingin menggunakan nilai plaintext yang disimpan di Parameter Store. Parameter Store adalah kemampuan AWS Systems Manager. Untuk pengantar Parameter Store, lihat AWS Systems Manager Parameter Menyimpan di Panduan AWS Systems Manager Pengguna.

Untuk menggunakan nilai plaintext dari Parameter Store dalam template Anda, Anda menggunakan referensi ssm dinamis. Referensi ini memungkinkan Anda untuk mengakses nilai dari parameter tipe String atau StringList di Parameter Store.

Untuk memverifikasi versi referensi ssm dinamis mana yang akan digunakan dalam operasi tumpukan, buat set perubahan untuk operasi tumpukan. Kemudian, tinjau template yang diproses pada tab Template. Untuk informasi selengkapnya, silakan lihat Buat set perubahan dan Melihat set perubahan.

Saat menggunakan referensi ssm dinamis, ada beberapa hal penting yang perlu diingat:

  • CloudFormation tidak mendukung deteksi drift pada referensi dinamis. Untuk referensi ssm dinamis di mana Anda belum menentukan versi parameter, sebaiknya, jika Anda memperbarui versi parameter di Systems Manager, Anda juga melakukan operasi pembaruan tumpukan pada tumpukan apa pun yang menyertakan referensi ssm dinamis, untuk mengambil versi parameter terbaru.

  • Untuk menggunakan referensi ssm dinamis di Parameters bagian CloudFormation template Anda, Anda harus menyertakan nomor versi. CloudFormation tidak memungkinkan Anda untuk mereferensikan nilai Parameter Store tanpa nomor versi di bagian ini. Atau, Anda dapat menentukan parameter Anda sebagai tipe parameter Systems Manager di template Anda. Ketika Anda melakukan ini, Anda dapat menentukan kunci parameter Systems Manager sebagai nilai default untuk parameter Anda. CloudFormation kemudian akan mengambil versi terbaru dari nilai parameter dari Parameter Store, tanpa Anda harus menentukan nomor versi. Ini dapat membuat template Anda lebih sederhana dan lebih mudah dirawat. Untuk informasi selengkapnya, lihat Referensikan sumber daya yang ada dan parameter Systems Manager dengan CloudFormation tipe parameter yang disediakan.

  • Untuk sumber daya kustom, CloudFormation selesaikan referensi ssm dinamis sebelum mengirim permintaan ke sumber daya kustom.

  • CloudFormation tidak mendukung penggunaan referensi dinamis untuk mereferensikan parameter yang dibagikan dari yang lain Akun AWS.

  • CloudFormation tidak mendukung penggunaan label parameter Systems Manager dalam referensi dinamis.

Izin

Untuk menentukan parameter yang disimpan di Systems Manager Parameter Store, Anda harus memiliki izin untuk memanggil GetParametersuntuk parameter yang ditentukan. Untuk mempelajari cara membuat IAM kebijakan yang menyediakan akses ke parameter Systems Manager tertentu, lihat Membatasi akses ke parameter Systems Manager menggunakan IAM kebijakan di Panduan AWS Systems Manager Pengguna.

Pola referensi

Untuk mereferensikan nilai plaintext yang disimpan di Systems Manager Parameter Store di CloudFormation template Anda, gunakan pola ssm referensi berikut.

{{resolve:ssm:parameter-name:version}}

Referensi Anda harus mematuhi pola ekspresi reguler berikut untuk nama parameter dan versi:

{{resolve:ssm:[a-zA-Z0-9_.\-/]+(:\d+)?}}
parameter-name

Nama parameter dalam Penyimpanan Parameter. Perhatikan bahwa nama parameter bersifat peka huruf besar-kecil.

Diperlukan.

version

Integer yang menentukan versi parameter untuk digunakan. Jika Anda tidak menentukan versi yang tepat, CloudFormation gunakan versi terbaru dari parameter setiap kali Anda membuat atau memperbarui tumpukan. Untuk informasi selengkapnya, lihat Bekerja dengan versi parameter di Panduan AWS Systems Manager Pengguna.

Tidak wajib.

Contoh

Contoh berikut membuat template EC2 peluncuran yang mereferensikan AMI ID kustom yang disimpan di Parameter Store. Referensi dinamis mengambil AMI ID dari versi 2 golden-amiparameter setiap kali instance diluncurkan dari template peluncuran.

JSON

{ "Resources": { "MyLaunchTemplate": { "Type": "AWS::EC2::LaunchTemplate", "Properties": { "LaunchTemplateName": { "Fn::Sub": "${AWS::StackName}-launch-template" }, "LaunchTemplateData": { "ImageId": "{{resolve:ssm:golden-ami:2}}", "InstanceType": "t2.micro" } } } } }

YAML

Resources: MyLaunchTemplate: Type: AWS::EC2::LaunchTemplate Properties: LaunchTemplateName: !Sub ${AWS::StackName}-launch-template LaunchTemplateData: ImageId: '{{resolve:ssm:golden-ami:2}}' InstanceType: t2.micro