View a markdown version of this page

Menggunakan API untuk Amazon EC2 - Amazon Elastic Compute Cloud

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

Menggunakan API untuk Amazon EC2

penting

Per 14 Oktober 2022, tanggapan HTTP dari Amazon EC2 API tidak lagi menyertakan elemen frase alasan. Seperti yang direkomendasikan oleh RFC7230, Anda harus memastikan bahwa aplikasi Anda tidak menggunakan konten frase alasan. Pastikan aplikasi Anda menggunakan elemen kode status 3 digit yang disertakan dalam respons HTTP sebagai gantinya.

Kami menyediakan Query API untuk Amazon EC2, serta perangkat pengembangan perangkat lunak (SDK) AWS yang memungkinkan Anda mengakses Amazon EC2 dari bahasa pemrograman pilihan Anda. Untuk informasi selengkapnya, lihat Panduan Pengembang Amazon EC2.

Pengetahuan yang dibutuhkan

Jika Anda berencana untuk mengakses Amazon EC2 melalui API, Anda harus terbiasa dengan hal-hal berikut:

  • XML

  • Layanan web

  • Permintaan HTTP

  • Satu atau lebih bahasa pemrograman, seperti Java, PHP, Perl, Python, Ruby, C #, atau C ++.

API yang tersedia untuk Amazon EC2

API Kueri Amazon EC2 menyediakan permintaan HTTP atau HTTPS yang menggunakan kata kerja HTTP GET atau POST dan parameter Kueri bernama. Action

AWS menyediakan pustaka, kode sampel, tutorial, dan sumber daya lainnya untuk pengembang perangkat lunak yang lebih suka membangun aplikasi menggunakan API khusus bahasa daripada mengirimkan permintaan melalui HTTP atau HTTPS. Pustaka ini menyediakan fungsi dasar yang secara otomatis menangani tugas-tugas seperti menandatangani permintaan Anda secara kriptografis, mencoba ulang permintaan, dan menangani respons kesalahan, sehingga lebih mudah bagi Anda untuk memulai.

Untuk informasi selengkapnya, lihat Membuat resource Amazon EC2 menggunakan AWS SDK di Panduan Pengembang Amazon EC2.

Parameter kueri umum

Sebagian besar tindakan Amazon EC2 API mendukung parameter yang dijelaskan dalam tabel berikut. Parameter umum bervariasi tergantung pada apakah Anda menggunakan Signature Version 2 atau Signature Version 4 untuk menandatangani permintaan Anda. Untuk informasi selengkapnya, lihat Menandatangani permintaan AWS API di Panduan Pengguna IAM.

Parameter untuk Versi Tanda Tangan 4

Nama Deskripsi Diperlukan

Action

Tindakan yang harus dilakukan.

Contoh: RunInstances

Ya

Version

Versi API yang akan digunakan.

Ya

X-Amz-Algorithm

Algoritma hash yang Anda gunakan untuk membuat tanda tangan permintaan.

Contoh: AWS4-HMAC-SHA256

Ya

X-Amz-Credential

Ruang lingkup kredensyal untuk permintaan, dalam formataccess-key-ID//YYYYMMDD/region/serviceaws4_request

Contoh: AKIDEXAMPLE/20140707/us-east-1/ec2/aws4_request

Ya

X-Amz-Date

Tanggal dan waktu di mana permintaan ditandatangani, dalam format yyyyymmddthhmmssz. Tanggal harus sesuai dengan tanggal yang disertakan dalam cakupan kredensi untuk X-Amz-Credential parameter, atau tanggal yang digunakan dalam Authorization header (lihat catatan di bawah tabel).

Contoh: 20140707T150456Z

Ya
X-Amz-SignedHeaders

Header yang Anda sertakan sebagai bagian dari permintaan. Minimal, Anda harus menyertakan host header. Jika Anda menyertakan x-amz-date header dalam permintaan Anda, Anda harus memasukkannya ke dalam daftar header yang ditandatangani.

Contoh: content-type;host;user-agent

Ya

X-Amz-Signature

Tanda tangan yang berasal dari kunci akses rahasia Anda.

Contoh: ced6826de92d2bdeed8f846f0bf508e8559example

Ya

X-Amz-Security-Token

Token keamanan sementara diperoleh melalui panggilan ke AWS Security Token Service.

Contoh: AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L

Tidak

DryRun

Memeriksa apakah Anda memiliki izin yang diperlukan untuk tindakan tersebut, tanpa benar-benar membuat permintaan. Jika Anda memiliki izin yang diperlukan, permintaan akan kembaliDryRunOperation; jika tidak, ia kembaliUnauthorizedOperation.

Tidak

X-Amz-SignatureParameter X-Amz-Algorithm X-Amz-CredentialX-Amz-SignedHeaders,,, dan dapat ditentukan sebagai parameter terpisah dalam string kueri, atau nilainya dapat dimasukkan dalam satu Authorization header. Untuk informasi selengkapnya, lihat Menandatangani permintaan AWS API di Panduan Pengguna IAM.

Parameter untuk Versi Tanda Tangan 2

Nama Deskripsi Diperlukan

Action

Tindakan yang harus dilakukan.

Contoh: RunInstances

Ya

Version

Versi API yang akan digunakan.

Ya

AWSAccessKeyId

ID kunci akses untuk pengirim permintaan. Ini mengidentifikasi akun yang akan dikenakan biaya untuk penggunaan layanan. Akun yang terkait dengan ID kunci akses harus terdaftar untuk Amazon EC2, atau permintaan tidak diterima.

Contoh: AKIAIOSFODNN7EXAMPLE

Ya

Expires

Tanggal dan waktu di mana tanda tangan yang termasuk dalam permintaan kedaluwarsa, dalam format YYYY-MM-DDThh:mm:ssZ. Untuk informasi selengkapnya, lihat ISO 8601.

Contoh: 2006-07-07T15:04:56Z

Bersyarat. Permintaan harus menyertakan salah satu Timestamp atauExpires, tetapi tidak dapat berisi keduanya.

Timestamp

Tanggal dan waktu di mana permintaan ditandatangani, dalam format YYYY-MM-DDThh:mm:ssZ. Untuk informasi selengkapnya, lihat ISO 8601.

Contoh: 2006-07-07T15:04:56Z

Bersyarat. Permintaan harus menyertakan salah satu Timestamp atauExpires, tetapi tidak dapat berisi keduanya.

Signature

Tanda tangan permintaan.

Contoh: Qnpl4Qk/7tINHzfXCiT7VEXAMPLE

Ya

SignatureMethod

Algoritma hash yang Anda gunakan untuk membuat tanda tangan permintaan. Nilai yang valid: HmacSHA256 | HmacSHA1.

Contoh: HmacSHA256

Ya

SignatureVersion

Versi tanda tangan yang Anda gunakan untuk menandatangani permintaan. Tetapkan nilai ini ke2.

Contoh: 2

Ya

DryRun

Memeriksa apakah Anda memiliki izin yang diperlukan untuk tindakan tersebut, tanpa benar-benar membuat permintaan. Jika Anda memiliki izin yang diperlukan, permintaan akan kembaliDryRunOperation; jika tidak, ia kembaliUnauthorizedOperation.

Tidak

SecurityToken

Token keamanan sementara diperoleh melalui panggilan ke AWS Security Token Service.

Contoh: AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L

Tidak

Nilai parameter harus URL-encoded. Ini berlaku untuk parameter Kueri apa pun yang diteruskan ke Amazon EC2 dan biasanya diperlukan dalam parameter. Signature Beberapa klien melakukan ini secara otomatis, tetapi ini bukan norma.