Dokumen identitas instans - Amazon Elastic Compute Cloud

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

Dokumen identitas instans

Setiap instans yang Anda luncurkan memiliki dokumen identitas instans yang memberikan informasi tentang instans tersebut. Anda dapat menggunakan dokumen identitas instans untuk memvalidasi atribut instans.

Dokumen identitas instans dibuat saat instans dihentikan dan dimulai, dimulai ulang, atau diluncurkan. Dokumen identitas instans diekspos (dalam format JSON plaintext) melalui Layanan Metadata Instans (IMDS). Alamat IPv4 169.254.169.254 adalah alamat link-local dan hanya valid dari instans. Untuk informasi selengkapnya, lihat Alamat tautan-lokal di Wikipedia. Alamat IPv6 [fd00:ec2::254] adalah alamat lokal yang unik dan hanya valid dari instans. Untuk informasi selengkapnya, lihat Alamat lokal yang unik di Wikipedia.

catatan

Contoh di bagian ini menggunakan alamat IPv4 IMDS: 169.254.169.254. Jika Anda mengambil metadata instans untuk instans EC2 melalui alamat IPv6, pastikan Anda mengaktifkan dan menggunakan alamat IPv6 sebagai gantinya: [fd00:ec2::254] Alamat IPv6 IMDS kompatibel dengan perintah IMDSv2. Alamat IPv6 hanya dapat diakses pada Instans yang dibangun di atas Sistem AWS Nitro dan dalam subnet yang didukung IPv6 (hanya tumpukan ganda atau IPv6).

Anda dapat mengambil dokumen identitas instans dari instans yang sedang berjalan kapan saja. Dokumen identitas instans mencakup informasi berikut:

Data Deskripsi
accountId

ID AWS akun yang meluncurkan instance.

architecture

Arsitektur AMI yang digunakan untuk meluncurkan instans (i386 | x86_64 | arm64).

availabilityZone

Zona Ketersediaan tempat instans berjalan.

billingProducts

Produk penagihan instans.

devpayProductCodes

Telah usang.

imageId

ID AMI yang digunakan untuk meluncurkan instans.

instanceId

ID instans.

instanceType

Tipe instans dari instans tersebut.

kernelId

ID kernel yang terkait dengan instans, jika ada.

marketplaceProductCodes

Kode AWS Marketplace produk AMI digunakan untuk meluncurkan instance.

pendingTime

Tanggal dan waktu instans diluncurkan.

privateIp

Alamat IPv4 privat dari instans.

ramdiskId

ID dari RAM disk yang terkait dengan instans, jika ada.

region

Wilayah tempat instans berjalan.

version

Versi format dokumen identitas instans.

Mengambil dokumen identitas instans plaintext

Untuk mengambil dokumen identitas instans plaintext

Hubungkan ke instans dan jalankan perintah berikut.

IMDSv2
$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document
IMDSv1
$ curl http://169.254.169.254/latest/dynamic/instance-identity/document
IMDSv2
PS C:\> [string]$token = (Invoke-WebRequest -Method Put -Headers @{'X-aws-ec2-metadata-token-ttl-seconds' = '21600'} http://169.254.169.254/latest/api/token).Content
PS C:\> (Invoke-WebRequest -Headers @{'X-aws-ec2-metadata-token' = $Token} http://169.254.169.254/latest/dynamic/instance-identity/document).Content
IMDSv1
PS C:\> (Invoke-WebRequest http://169.254.169.254/latest/dynamic/instance-identity/document).Content

Berikut ini adalah output contoh.

{ "devpayProductCodes" : null, "marketplaceProductCodes" : [ "1abc2defghijklm3nopqrs4tu" ], "availabilityZone" : "us-west-2b", "privateIp" : "10.158.112.84", "version" : "2017-09-30", "instanceId" : "i-1234567890abcdef0", "billingProducts" : null, "instanceType" : "t2.micro", "accountId" : "123456789012", "imageId" : "ami-5fb8c835", "pendingTime" : "2016-11-19T16:32:11Z", "architecture" : "x86_64", "kernelId" : null, "ramdiskId" : null, "region" : "us-west-2" }

Verifikasi dokumen identitas instans

Jika Anda bermaksud menggunakan konten dokumen identitas instans untuk tujuan penting, Anda harus memverifikasi konten dan keaslian sebelum menggunakannya.

Dokumen identitas instans plaintext disertai dengan tiga tanda tangan yang di-hash dan dienkripsi. Anda dapat menggunakan tanda tangan ini untuk memverifikasi asal dan keaslian dokumen identitas instans serta informasi yang disertakan. Tanda tangan berikut disediakan:

  • Tanda tangan berenkode base64—Ini adalah hash SHA256 berenkode base64 dari dokumen identitas instans yang dienkripsi menggunakan pasangan kunci RSA.

  • Tanda tangan PKCS7—Ini adalah hash SHA1 dari dokumen identitas instans yang dienkripsi menggunakan pasangan kunci DSA.

  • Tanda tangan RSA-2048—Ini adalah hash SHA256 dari dokumen identitas instans yang dienkripsi menggunakan pasangan kunci RSA-2048.

Setiap tanda tangan tersedia di titik akhir yang berbeda dalam metadata instans. Anda dapat menggunakan salah satu dari tanda tangan ini, tergantung persyaratan hashing dan enkripsi Anda. Untuk memverifikasi tanda tangan, Anda harus menggunakan sertifikat AWS publik yang sesuai.

Topik berikut ini memberikan langkah-langkah yang mendetail untuk memvalidasi dokumen identitas instans menggunakan setiap tanda tangan.