Mengautentikasi permintaan SOAP - Amazon Simple Storage Service

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

Mengautentikasi permintaan SOAP

catatan

Dukungan SOAP melalui HTTP dihentikan, tetapi SOAP masih tersedia melalui HTTPS. Fitur Amazon S3 baru tidak mendukung SOAP. Alih-alih menggunakan SOAP, kami menyarankan agar Anda menggunakan REST API atauAWSSDK.

Setiap permintaan non-anonim harus berisi informasi autentikasi untuk menetapkan identitas prinsipal yang membuat permintaan tersebut. Dalam SOAP, informasi autentikasi dimasukkan ke dalam elemen-elemen permintaan SOAP berikut:

  • Access Key ID AWS Anda

    catatan

    Saat membuat permintaan SOAP yang diautentikasi, kredensial keamanan sementara tidak didukung. Untuk informasi selengkapnya tentang jenis kredensial, lihat Membuat permintaan.

  • Timestamp: Ini harus sebuah dateTime (masuk ke http://www.w3.org/TR/xmlschema-2/#dateTime) di zona waktu Coordinated Universal Time (Greenwich Mean Time), seperti 2009-01-01T12:00:00.000Z. Otorisasi akan gagal jika timestamp ini lebih dari 15 menit dari jam pada server Amazon S3.

  • Signature: RFC 2104 HMAC-SHA1 Digest (Buka http://www.ietf.org/rfc/rfc2104.txt) dari gabungan "Amazon3" + OPERASI + Timestamp, menggunakan Secret Access Key AWS Anda sebagai kuncinya. Misalnya, dalam yang berikut ini CreateBucket permintaan sampel, elemen tanda tangan akan mengandung intisari HMAC-SHA1 dari nilai “AmazonS3CreateBucket2009-01-01T 12:00:00 .000Z”:

Misalnya, dalam yang berikut ini CreateBucket permintaan sampel, elemen tanda tangan akan mengandung intisari HMAC-SHA1 dari nilai “AmazonS3CreateBucket2009-01-01T 12:00:00 .000Z”:

contoh
<CreateBucket xmlns="https://doc.s3.amazonaws.com/2006-03-01"> <Bucket>quotes</Bucket> <Acl>private</Acl> <AWSAccessKeyId>AKIAIOSFODNN7EXAMPLE</AWSAccessKeyId> <Timestamp>2009-01-01T12:00:00.000Z</Timestamp> <Signature>Iuyz3d3P0aTou39dzbqaEXAMPLE=</Signature> </CreateBucket>
catatan

Permintaan SOAP, baik yang diautentikasi maupun anonim, harus dikirim ke Amazon S3 menggunakan SSL. Amazon S3 mengembalikan kesalahan saat Anda mengirimkan permintaan SOAP melalui HTTP.

penting

Karena perbedaan interpretasi tentang bagaimana presisi waktu ekstra harus ditempatkan, pengguna .NET harus berhati-hati agar tidak mengirimkan stempel waktu Amazon S3 secara berlebihan. Ini dapat dicapai dengan menyusun DateTime objek secara manual dengan presisi hanya dalam milidetik.