Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengembangkan dengan Amazon S3 menggunakan SDK AWS
AWS kit pengembangan perangkat lunak (SDK) tersedia untuk banyak bahasa pemrograman populer. Setiap SDK menyediakan API, contoh kode, dan dokumentasi yang memudahkan developer untuk membangun aplikasi dalam bahasa pilihan mereka.
catatan
Anda dapat menggunakan AWS Amplify untuk pengembangan end-to-end fullstack aplikasi web dan seluler. Amplify Storage mengintegrasikan kemampuan penyimpanan dan manajemen file dengan mulus ke web frontend dan aplikasi seluler, yang dibangun di atas Amazon S3. Untuk informasi selengkapnya, lihat Penyimpanan
Antarmuka Pemrograman SDK
Setiap AWS SDK menyediakan satu atau lebih antarmuka terprogram untuk bekerja dengan Amazon S3. Setiap SDK menyediakan antarmuka tingkat rendah untuk Amazon S3, dengan metode yang sangat mirip dengan operasi API. Beberapa SDK menyediakan antarmuka tingkat tinggi untuk Amazon S3, yang merupakan abstraksi yang dimaksudkan untuk menyederhanakan kasus penggunaan umum.
Misalnya, saat Anda melakukan pengunggahan multibagian menggunakan operasi API tingkat rendah, Anda perlu menggunakan operasi untuk memulai unggahan, operasi lain untuk mengunggah komponen, dan operasi akhir untuk menyelesaikan unggahan. Operasi API unggahan multibagian tingkat tinggi memungkinkan Anda melakukan semua operasi yang diperlukan untuk mengunggah dalam satu panggilan API. Sebagai contoh, lihat Pengunggahan objek menggunakan unggahan multibagian.
Operasi API tingkat rendah memungkinkan kontrol yang lebih besar atas unggahan. Kami menyarankan Anda menggunakan operasi API tingkat rendah jika Anda perlu menjeda dan melanjutkan unggahan, memvariasikan ukuran bagian selama pengunggahan, atau mulai mengunggah saat Anda tidak mengetahui ukuran data sebelumnya.
Menentukan Versi Tanda Tangan di Autentikasi Permintaan
Amazon S3 hanya mendukung AWS Signature Version 4 di sebagian besar. Wilayah AWS Di beberapa yang lebih lama Wilayah AWS, Amazon S3 mendukung Signature Version 4 dan Signature Version 2. Akan tetapi, Signature Version 2 sedang dinonaktifkan (dihentikan). Untuk informasi lebih lanjut tentang akhir dukungan untuk Signature Version 2, lihat AWS Tanda Tangan Versi 2 Dimatikan (Tidak Digunakan Lagi) untuk Amazon S3.
Untuk daftar dari semua Wilayah Amazon S3 dan versi tanda tangan yang didukung, lihat Wilayah dan Titik Akhir dalam Referensi Umum AWS .
Untuk semua Wilayah AWS, AWS SDK menggunakan Signature Version 4 secara default untuk mengautentikasi permintaan. Saat menggunakan AWS SDK yang dirilis sebelum Mei 2016, Anda mungkin diminta untuk meminta Tanda Tangan Versi 4, seperti yang ditunjukkan pada tabel berikut.
SDK | Meminta Signature Version 4 untuk Autentikasi Permintaan |
---|---|
AWS CLI |
Untuk profil default, jalankan perintah berikut:
Untuk profil kustom, jalankan perintah berikut:
|
SDK Java |
Tambahkan hal berikut di kode Anda:
Atau, pada baris perintah, tentukan hal berikut:
|
JavaScript SDK |
Tetapkan parameter
|
SDK PHP |
Tetapkan parameter
Saat menggunakan PHP SDK v3, atur parameter
|
SDK Python-Boto |
Tentukan hal berikut dalam berkas konfigurasi default boto:
|
Ruby SDK |
Ruby SDK-Versi 1: Atur parameter
Ruby SDK-Versi 3: Atur parameter
|
SDK .NET |
Tambahkan yang berikut ini ke kode sebelum membuat klien Amazon S3:
Atau, tambahkan yang berikut ini ke file konfigurasi:
|
AWS Tanda Tangan Versi 2 Dimatikan (Tidak Digunakan Lagi) untuk Amazon S3
Signature Version 2 dinonaktifkan (dihentikan) di Amazon S3. Amazon S3 kemudian hanya akan menerima permintaan API yang ditandatangani menggunakan Signature Version 4.
Bagian ini memberikan jawaban atas pertanyaan umum mengenai akhir dukungan untuk Signature Version 2.
Apa yang dimaksud dengan Signature Version 2/4, dan Apa Artinya Menandatangani Permintaan?
Proses penandatanganan Signature Version 2 atau Signature Version 4 digunakan untuk mengautentikasi permintaan Amazon S3 API Anda. Permintaan penandatanganan memungkinkan Amazon S3 mengidentifikasi siapa yang mengirim permintaan dan melindungi permintaan Anda dari pelaku kejahatan.
Untuk informasi selengkapnya tentang AWS permintaan penandatanganan, lihat Menandatangani Permintaan AWS API di Referensi Umum AWS.
Pembaruan Apa yang Anda Buat?
Saat ini kami mendukung permintaan API Amazon S3 yang ditandatangani menggunakan proses Signature Version 2 dan Signature Version 4. Setelah itu, Amazon S3 kemudian hanya akan menerima permintaan yang ditandatangani menggunakan Signature Version 4.
Untuk informasi selengkapnya tentang AWS permintaan penandatanganan, lihat Perubahan dalam Versi Tanda Tangan 4 di Referensi Umum AWS.
Mengapa Anda Membuat Pembaruan?
Signature Version 4 memberikan keamanan yang lebih baik dengan menggunakan kunci penandatanganan dan bukan kunci akses rahasia Anda. Signature Version 4 saat ini didukung di semua Wilayah AWS, sedangkan Signature Version 2 hanya didukung di Wilayah yang diluncurkan sebelum Januari 2014. Pembaruan ini memungkinkan kami memberikan pengalaman yang lebih konsisten di seluruh Wilayah.
Bagaimana Saya Memastikan bahwa Saya Menggunakan Signature Version 4, dan Pembaruan Apa yang Saya Perlukan?
Versi tanda tangan yang digunakan untuk menandatangani permintaan Anda biasanya ditetapkan oleh alat atau SDK di sisi klien. Secara default, versi terbaru AWS SDK kami menggunakan Signature Version 4. Untuk perangkat lunak pihak ketiga, hubungi tim dukungan yang sesuai untuk perangkat lunak Anda guna mengonfirmasi versi apa yang Anda butuhkan. Jika Anda mengirim panggilan REST langsung ke Amazon S3, Anda harus memodifikasi aplikasi Anda untuk menggunakan proses penandatanganan Signature Version 4.
Untuk informasi tentang versi AWS SDK yang akan digunakan saat pindah ke Signature Version 4, lihatBeralih dari Signature Version 2 ke Signature Version 4.
Untuk informasi tentang menggunakan Signature Version 4 dengan API REST Amazon S3, lihat Permintaan Autentikasi (Signature Version 4 AWS ) di Referensi API Amazon Simple Storage Service.
Apa yang Terjadi jika Saya Tidak Melakukan Pembaruan?
Permintaan yang ditandatangani dengan Signature Version 2 yang dibuat setelahnya akan gagal diautentikasi dengan Amazon S3. Pemohon akan melihat kesalahan yang menyatakan bahwa permintaan harus ditandatangani dengan Signature Version 4.
Haruskah Saya Melakukan Perubahan Meskipun Saya Menggunakan URL yang Ditandatangani Sebelumnya yang Harus Saya Tandatangani Selama Lebih dari 7 Hari?
Jika Anda menggunakan URL yang ditandatangani sebelumnya yang mengharuskan Anda menandatangani lebih dari 7 hari, saat ini tidak ada tindakan yang diperlukan. Anda dapat terus menggunakan AWS Signature Version 2 untuk menandatangani dan mengautentikasi URL yang telah ditetapkan sebelumnya. Kami akan menindaklanjuti dan memberikan detail lebih lanjut tentang cara memigrasi ke Signature Version 4 untuk skenario URL yang ditandatangani sebelumnya.
Info Selengkapnya
-
Untuk informasi selengkapnya tentang penggunaan Tanda Tangan Versi 4, lihat Menandatangani Permintaan AWS API.
-
Lihat daftar perubahan antara Signature Version 2 dan Signature Version 4 di Perubahan dalam Signature Version 4.
-
Lihat postingan AWS Signature Version 4 untuk menggantikan AWS Signature Version 2 untuk menandatangani permintaan API Amazon S3
di AWS forum. -
Jika Anda memiliki pertanyaan atau kekhawatiran, hubungi AWS Support.
Beralih dari Signature Version 2 ke Signature Version 4
Jika saat ini Anda menggunakan Signature Version 2 untuk autentikasi permintaan API Amazon S3, Anda harus beralih ke menggunakan Signature Version 4. Dukungan berakhir untuk Signature Version 2, sebagaimana dijelaskan di AWS Tanda Tangan Versi 2 Dimatikan (Tidak Digunakan Lagi) untuk Amazon S3.
Untuk informasi tentang menggunakan Signature Version 4 dengan API REST Amazon S3, lihat Permintaan Autentikasi (Signature Version 4 AWS ) di Referensi API Amazon Simple Storage Service.
Tabel berikut mencantumkan SDK dengan versi minimum yang diperlukan untuk menggunakan Signature Version 4 (SigV4). Jika Anda menggunakan URL presigned dengan SDK AWS Java, JavaScript (Node.js), atau Python (Boto/CLI), Anda harus mengatur yang benar Wilayah AWS dan mengatur Signature Version 4 dalam konfigurasi klien. Untuk informasi tentang pengaturan SigV4
di konfigurasi klien, lihat Menentukan Versi Tanda Tangan di Autentikasi Permintaan.
Jika Anda menggunakan SDK/Produk ini | Tingkatkan ke versi SDK ini | Perubahan kode yang diperlukan bagi klien untuk menggunakan Sigv4? | Tautan ke dokumentasi SDK |
---|---|---|---|
AWS SDK for Java v1 |
Peningkatan ke Java 1.11.201+ atau v2. | Ya | Menentukan Versi Tanda Tangan di Autentikasi Permintaan |
AWS SDK for Java v2 |
Tidak diperlukan peningkatan SDK. | Tidak | AWS SDK for Java |
AWS SDK for .NET v1 |
Tingkatkan ke 3.1.10 atau lebih baru. | Ya | AWS SDK for .NET |
AWS SDK for .NET v2 |
Tingkatkan ke 3.1.10 atau lebih baru. | Tidak | AWS SDK for .NET
v2 |
AWS SDK for .NET v3 |
Tingkatkan ke 3.3.0.0 atau lebih baru. | Ya | AWS SDK for .NET v3 |
AWS SDK for JavaScript v1 |
Tingkatkan ke 2.68.0 atau lebih baru. | Ya | AWS SDK for JavaScript |
AWS SDK for JavaScript v2 |
Tingkatkan ke 2.68.0 atau lebih baru. | Ya | AWS SDK for JavaScript |
AWS SDK for JavaScript v3 |
Saat ini tidak ada tindakan yang diperlukan. Tingkatkan ke versi utama V3 di Q3 2019. | Tidak | AWS SDK for JavaScript |
AWS SDK for PHP v1 |
Rekomendasikan untuk meningkatkan ke versi terbaru PHP atau, setidaknya ke v2.7.4 dengan parameter tanda tangan yang diatur ke v4 dalam konfigurasi klien S3. | Ya | AWS SDK for PHP |
AWS SDK for PHP v2 |
Rekomendasikan untuk meningkatkan ke versi terbaru PHP atau, setidaknya ke v2.7.4 dengan parameter tanda tangan yang diatur ke v4 dalam konfigurasi klien S3. | Tidak | AWS SDK for PHP |
AWS SDK for PHP v3 |
Tidak diperlukan peningkatan SDK. | Tidak | AWS SDK for PHP |
Boto2 |
Tingkatkan ke Boto2 v2.49.0. | Ya | Peningkatan Boto 2 |
Boto3 |
Tingkatkan ke 1.5.71 (Botocore), 1.4.6 (Boto3). | Ya | Boto 3 - AWS SDK untuk Python |
AWS CLI |
Memutakhirkan ke 1.11.108. | Ya | AWS Command Line Interface |
AWS CLI v2 (pratinjau) |
Tidak diperlukan peningkatan SDK. | Tidak | AWS Command Line Interface versi 2 |
AWS SDK for Ruby v1 |
Tingkatkan ke Ruby V3. | Ya | Ruby V3 untuk AWS |
AWS SDK for Ruby v2 |
Tingkatkan ke Ruby V3. | Ya | Ruby V3 untuk AWS |
AWS SDK for Ruby v3 |
Tidak diperlukan peningkatan SDK. | Tidak | Ruby V3 untuk AWS |
Go |
Tidak diperlukan peningkatan SDK. | Tidak | AWS SDK for Go |
C++ |
Tidak diperlukan peningkatan SDK. | Tidak | AWS SDK for C++ |
AWS Tools for Windows PowerShell atau AWS Tools for PowerShell Core
Jika Anda menggunakan versi modul lebih awal dari 3.3.0.0, Anda harus meningkatkan ke 3.3.0.0.
Untuk mendapatkan informasi versi, gunakan cmdlet Get-Module
:
Get-Module –Name AWSPowershell Get-Module –Name AWSPowershell.NetCore
Untuk memperbarui versi 3.3.0.0, gunakan cmdlet Update-Module
:
Update-Module –Name AWSPowershell Update-Module –Name AWSPowershell.NetCore
Anda dapat menggunakan URL yang telah ditandatangani sebelumnya yang valid selama lebih dari 7 hari yang akan Anda gunakan untuk mengirimkan lalu lintas Signature Version 2.