View a markdown version of this page

Permintaan Otentikasi: Ung Browser-Based gah Menggunakan POST (AWS Versi Tanda Tangan 4) - Amazon Simple Storage Service

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

Permintaan Otentikasi: Ung Browser-Based gah Menggunakan POST (AWS Versi Tanda Tangan 4)

Amazon S3 mendukung permintaan HTTP POST sehingga pengguna dapat mengunggah konten langsung ke Amazon S3. Menggunakan HTTP POST untuk mengunggah konten menyederhanakan unggahan dan mengurangi latensi unggahan di mana pengguna mengunggah data untuk disimpan di Amazon S3. Bagian ini menjelaskan cara Anda mengotentikasi permintaan HTTP POST. Untuk informasi selengkapnya tentang permintaan HTTP POST, cara membuat formulir, membuat kebijakan POST, dan contoh, lihatBrowser-Based Unggah Menggunakan POST (AWS Versi Tanda Tangan 4).

Untuk mengotentikasi permintaan HTTP POST, lakukan hal berikut:

  1. Formulir harus menyertakan bidang berikut untuk memberikan tanda tangan dan informasi relevan yang dapat digunakan Amazon S3 untuk menghitung ulang tanda tangan setelah menerima permintaan:

    Nama Elemen Deskripsi
    policy

    Kebijakan Base64-encoded keamanan yang menjelaskan apa yang diizinkan dalam permintaan. Untuk perhitungan tanda tangan, kebijakan ini adalah string yang Anda tandatangani. Amazon S3 harus mendapatkan kebijakan ini sehingga dapat menghitung ulang tanda tangan.

    x-amz-algorithm

    Algoritma penandatanganan yang digunakan. Untuk AWS Signature Version 4, nilainya adalahAWS4-HMAC-SHA256.

    x-amz-credential

    Selain ID kunci akses Anda, ini menyediakan informasi cakupan yang Anda gunakan dalam menghitung kunci penandatanganan untuk perhitungan tanda tangan.

    Ini adalah string dari bentuk berikut:

    <your-access-key-id>/<date>/<aws-region>/<aws-service>/aws4_request

    Contoh:

    AKIAIOSFODNN7EXAMPLE/20130728/us-east-1/s3/aws4_request. .

    Untuk Amazon S3, string aws-service adalah. s3 Untuk daftar aws-region string Amazon S3, lihat Wil ayah dan Titik Akhir di Referensi Umum AWS.

    x-amz-date

    Ini adalah nilai tanggal dalam format ISO8601. Misalnya, 20130728T000000Z.

    Ini adalah tanggal yang sama yang Anda gunakan dalam membuat kunci penandatanganan. Nilai ini juga harus sama dengan yang Anda berikan dalam kebijakan (x-amz-date) yang Anda tandatangani.

    x-amz-signature

    (AWS Signature Version 4) HMAC-SHA256 Hash dari kebijakan keamanan.

    Untuk informasi selengkapnya tentang opsi untuk tanda tangan, lihat Men ambahkan tanda tangan ke permintaan HTTP di Referensi Umum AWS.

  2. Kebijakan POST harus mencakup elemen-elemen berikut:

    Nama Elemen Deskripsi
    x-amz-algorithm

    Algoritma penandatanganan yang Anda gunakan untuk menghitung tanda tangan. Untuk AWS Signature Version 4, nilainya adalahAWS4-HMAC-SHA256.

    x-amz-credential

    Selain ID kunci akses Anda, ini menyediakan informasi cakupan yang Anda gunakan dalam menghitung kunci penandatanganan untuk perhitungan tanda tangan.

    Ini adalah string dari bentuk berikut:

    <your-access-key-id>/<date>/<aws-region>/<aws-service>/aws4_request

    Misalnya,

    AKIAIOSFODNN7EXAMPLE/20130728/us-east-1/s3/aws4_request. .

    x-amz-date

    Nilai tanggal yang ditentukan dalam string berformat ISO8601. Misalnya, ā€œ20130728T000000Zā€. Tanggal harus sama dengan yang Anda gunakan saat membuat kunci penandatanganan untuk perhitungan tanda tangan.

  3. Untuk perhitungan tanda tangan, kebijakan POST adalah string yang akan ditandatangani.

Menghitung Tanda Tangan

Diagram berikut menggambarkan proses perhitungan tanda tangan.

AWS proses perhitungan tanda tangan dengan StringToSign, SigningKey, dan langkah-langkah Tanda tangan.

Untuk Menghitung Tanda Tangan
  1. Buat kebijakan menggunakan UTF-8 pengkodean.

  2. Ubah UTF-8-encoded kebijakan menjadi Base64. Hasilnya adalah string yang akan ditandatangani.

  3. Buat tanda tangan sebagai HMAC-SHA256 hash dari string yang akan ditandatangani. Anda akan memberikan kunci penandatanganan sebagai kunci untuk fungsi hash.

  4. Enkode tanda tangan dengan menggunakan pengkodean hex.

Untuk informasi selengkapnya tentang membuat formulir HTML, kebijakan keamanan, dan contoh, lihat subtopik berikut: