Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Permintaan Otentikasi (AWS Versi Tanda Tangan 4)
Topik
Permintaan Otentikasi: Menggunakan Header Otorisasi (AWS Versi Tanda Tangan 4)
Otentikasi Permintaan: Menggunakan Parameter Kueri (AWS Versi Tanda Tangan 4)
Contoh: Perhitungan Tanda Tangan di AWS Tanda Tangan Versi 4
Permintaan Otentikasi: Ung Browser-Based gah Menggunakan POST (AWS Versi Tanda Tangan 4)
Kunci Kebijakan Khusus Otentikasi Tanda Tangan Amazon S3 Versi 4
Setiap interaksi dengan Amazon S3 diautentikasi atau dilakukan secara anonim. Bagian ini menjelaskan otentikasi permintaan dengan algoritma AWS Signature Version 4.
catatan
Jika Anda menggunakan AWS SDK (lihat Kode Contoh dan Pustaka
Otentik AWS asi dengan Tanda Tangan Versi 4 menyediakan beberapa atau semua hal berikut, tergantung pada cara Anda memilih untuk menandatangani permintaan Anda:
-
Verifikasi identitas pemohon — Permintaan yang diautentikasi memerlukan tanda tangan yang Anda buat dengan menggunakan kunci akses Anda (ID kunci akses, kunci akses rahasia). Untuk informasi tentang mendapatkan kunci akses, lihat Mem ahami dan Mendapatkan KredenSIAL Keamanan Anda di Referensi Umum AWS. Jika Anda menggunakan kredentif keamanan sementara, perhitungan tanda tangan juga memerlukan token keamanan. Untuk informasi lebih lanjut, lihat Meminta Kredensial Keamanan Sementara dalam Panduan Pengguna IAM.
-
In-transit perlindungan data — Untuk mencegah gangguan permintaan saat sedang transit, Anda menggunakan beberapa elemen permintaan untuk menghitung tanda tangan permintaan. Setelah menerima permintaan, Amazon S3 menghitung tanda tangan dengan menggunakan elemen permintaan yang sama. Jika komponen permintaan yang diterima oleh Amazon S3 tidak cocok dengan komponen yang digunakan untuk menghitung tanda tangan, Amazon S3 akan menolak permintaan tersebut.
-
Melindungi dari penggunaan kembali bagian permintaan yang ditandatangani — Bagian permintaan yang ditandatangani (menggunakan AWS Tanda Tangan) valid dalam waktu 15 menit dari stempel waktu dalam permintaan. Pihak yang tidak berwenang yang memiliki akses ke permintaan yang ditandatangani dapat mengubah bagian permintaan yang tidak ditandatangani tanpa mempengaruhi validitas permintaan dalam jendela 15 menit. Karena itu, sebaiknya Anda memaksimalkan perlindungan dengan menandatangani header dan isi permintaan, membuat permintaan HTTPS ke Amazon S3, dan dengan menggunakan kunci
s3:x-amz-content-sha256kondisi (lihatKunci Kebijakan Khusus Otentikasi Tanda Tangan Amazon S3 Versi 4) dalam AWS kebijakan untuk mengharuskan pengguna menandatangani badan permintaan Amazon S3.
catatan
Amazon S3 mendukung Signature Version 4, protokol untuk mengotentikasi permintaan API masuk ke AWS layanan, secara keseluruhan. Wilayah AWS Pada saat ini, Wilayah AWS dibuat sebelum 30 Januari 2014 akan terus mendukung protokol sebelumnya, Signature Version 2. Setiap Wilayah baru setelah 30 Januari 2014 hanya akan mendukung Tanda Tangan Versi 4 dan oleh karena itu semua permintaan ke Wilayah tersebut harus dibuat dengan Tanda Tangan Versi 4. Untuk informasi selengkapnya tentang AWS Tanda Tangan Versi 2, lihat Menandatangani dan Mengautentikasi Permintaan RES T di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Metode Autentikasi
Anda dapat mengungkapkan informasi otentikasi dengan menggunakan salah satu metode berikut:
-
Header Otorisasi HTTP — Menggunakan
Authorizationheader HTTP adalah metode paling umum untuk mengotentikasi permintaan Amazon S3. Semua operasi REST Amazon S3 (kecuali untuk unggahan berbasis browser menggunakan permintaan POST) memerlukan header ini. Untuk informasi selengkapnya tentang nilaiAuthorizationheader, dan cara menghitung tanda tangan dan opsi terkait, lihatPermintaan Otentikasi: Menggunakan Header Otorisasi (AWS Versi Tanda Tangan 4). -
Parameter string kueri — Anda dapat menggunakan string kueri untuk mengekspresikan permintaan sepenuhnya dalam URL. Dalam hal ini, Anda menggunakan parameter kueri untuk memberikan informasi permintaan, termasuk informasi otentikasi. Karena tanda tangan permintaan adalah bagian dari URL, jenis URL ini sering disebut sebagai URL yang ditandatangani sebelumnya. Anda dapat menggunakan URL yang telah ditandatangani sebelumnya untuk menyematkan tautan yang dapat diklik, yang dapat berlaku hingga tujuh hari, dalam HTML. Untuk informasi selengkapnya, lihat Otentikasi Permintaan: Menggunakan Parameter Kueri (AWS Versi Tanda Tangan 4).
Amazon S3 juga mendukung upload berbasis browser yang menggunakan permintaan HTTP POST. Dengan permintaan HTTP POST, Anda dapat mengunggah konten ke Amazon S3 langsung dari browser. Untuk informasi tentang mengotentikasi permintaan POST, lihatBrowser-Based Unggah Menggunakan POST (AWS Versi Tanda Tangan 4).
Pengantar Permintaan Penandatanganan
Informasi otentikasi yang Anda kirim dalam permintaan harus menyertakan tanda tangan. Untuk menghitung tanda tangan, pertama-tama Anda menggabungkan elemen permintaan pilih untuk membentuk string, yang disebut sebagai string yang akan ditandatangani. Anda kemudian menggunakan kunci penandatanganan untuk menghitung kode otentikasi pesan berbasis hash (HMAC) dari string yang akan ditandatangani.
Di AWS Signature Version 4, Anda tidak menggunakan kunci akses rahasia untuk menandatangani permintaan. Sebagai gantinya, pertama-tama Anda menggunakan kunci akses rahasia Anda untuk mendapatkan kunci penandatanganan. Kunci penandatanganan turunan khusus untuk tanggal, layanan, dan Wilayah. Untuk informasi selengkapnya tentang cara mendapatkan kunci penandatanganan dalam bahasa pemrograman yang berbeda, lihat Contoh cara mendapatkan kunci penandatanganan untuk Tanda Tangan Versi 4.
Diagram berikut menggambarkan proses umum menghitung tanda tangan.
String yang akan ditandatangani tergantung pada jenis permintaan. Misalnya, saat Anda menggunakan header Otorisasi HTTP atau parameter kueri untuk otentikasi, Anda menggunakan berbagai kombinasi elemen permintaan untuk membuat string yang akan ditandatangani. Untuk permintaan HTTP POST, kebijakan POST dalam permintaan adalah string yang Anda tandatangani. Untuk informasi lebih lanjut tentang komputasi string untuk ditandatangani, ikuti tautan yang disediakan di akhir bagian ini.
Untuk kunci penandatanganan, diagram menunjukkan serangkaian perhitungan, di mana hasil dari setiap langkah Anda masukkan ke langkah berikutnya. Langkah terakhir adalah kunci penandatanganan.
Setelah menerima permintaan yang diautentikasi, server Amazon S3 membuat ulang tanda tangan dengan menggunakan informasi otentikasi yang terkandung dalam permintaan. Jika tanda tangan cocok, Amazon S3 memproses permintaan Anda; jika tidak, permintaan ditolak.
Untuk informasi selengkapnya tentang mengotentikasi permintaan, lihat topik berikut: