Berkembang dengan Amazon S3 menggunakan AWS SDK, dan penjelajah - Amazon Simple Storage Service

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

Berkembang dengan Amazon S3 menggunakan AWS SDK, dan penjelajah

Anda dapat menggunakan AWS SDK saat mengembangkan aplikasi dengan Amazon S3. AWS SDK menyederhanakan tugas pemrograman Anda dengan membungkus REST API yang mendasarinya. AWS Mobile SDK dan AWS JavaScript Amplify library juga tersedia untuk membangun aplikasi seluler dan web yang terhubung. AWS

Bagian ini memberikan gambaran umum tentang penggunaan AWS SDK untuk mengembangkan aplikasi Amazon S3. Bagian ini juga menjelaskan bagaimana Anda dapat menguji contoh kode AWS SDK yang disediakan dalam panduan ini.

Selain AWS SDK, AWS Explorers tersedia untuk Visual Studio dan Eclipse untuk Java IDE. Dalam kasus ini, SDK dan Explorers tersedia dalam satu paket sebagai AWS Toolkit.

Anda juga dapat menggunakan AWS Command Line Interface (AWS CLI) untuk mengelola bucket dan objek Amazon S3.

AWS Toolkit for Eclipse

AWS Toolkit for Eclipse Termasuk kedua AWS SDK for Java dan AWS Explorer untuk Eclipse. AWS Explorer for Eclipse adalah plugin open source untuk Eclipse untuk Java IDE yang memudahkan pengembang untuk mengembangkan, men-debug, dan menyebarkan aplikasi Java menggunakan. AWS easy-to-use GUI memungkinkan Anda untuk mengakses dan mengelola AWS infrastruktur Anda termasuk Amazon S3. Anda dapat melakukan operasi umum seperti mengelola bucket, objek, dan mengatur kebijakan IAM, sambil mengembangkan aplikasi, semuanya dari dalam konteks Eclipse untuk Java IDE. Untuk petunjuk penyiapan, lihat Mempersiapkan Toolkit. Untuk contoh menggunakan Explorer, lihat Cara Mengakses AWS Explorer.

AWS Toolkit for Visual Studio

AWS Explorer for Visual Studio adalah ekstensi untuk Microsoft Visual Studio yang memudahkan pengembang untuk mengembangkan, men-debug, dan menyebarkan aplikasi.NET menggunakan Amazon Web Services. easy-to-use GUI memungkinkan Anda untuk mengakses dan mengelola AWS infrastruktur Anda termasuk Amazon S3. Anda dapat melakukan operasi umum seperti mengelola bucket, objek, dan mengatur kebijakan IAM, sambil mengembangkan aplikasi, semuanya dari dalam konteks Visual Studio. Untuk petunjuk pengaturan, lihat Menyiapkan AWS Toolkit for Visual Studio. Untuk contoh menggunakan Amazon S3 menggunakan explorer, lihat Menggunakan Amazon AWS S3 dari Explorer.

AWS SDK

Anda hanya bisa mengunduh SDK. Untuk informasi tentang mengunduh pustaka SDK, lihat Pustaka Kode Contoh.

AWS CLI

AWS CLI Ini adalah alat terpadu untuk mengelola AWS layanan Anda, termasuk Amazon S3. Untuk informasi tentang mengunduh AWS CLI, lihat AWS Command Line Interface.

Menggunakan layanan ini dengan AWS SDK

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.

Untuk contoh khusus untuk layanan ini, lihat Contoh kode untuk Amazon S3 menggunakan SDK AWS.

Ketersediaan contoh

Tidak dapat menemukan apa yang Anda butuhkan? Minta contoh kode menggunakan tautan Berikan umpan balik pada bagian bawah halaman ini.

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:

$ aws configure set default.s3.signature_version s3v4

Untuk profil kustom, jalankan perintah berikut:

$ aws configure set profile.your_profile_name.s3.signature_version s3v4
SDK Java

Tambahkan hal berikut di kode Anda:

System.setProperty(SDKGlobalConfiguration.ENABLE_S3_SIGV4_SYSTEM_PROPERTY, "true");

Atau, pada baris perintah, tentukan hal berikut:

-Dcom.amazonaws.services.s3.enableV4
JavaScript SDK

Tetapkan parameter signatureVersion ke v4 saat mengonstruksi klien:

var s3 = new AWS.S3({signatureVersion: 'v4'});
SDK PHP

Tetapkan parameter signature ke v4 saat mengonstruksi klien layanan Amazon S3 untuk PHP SDK v2:

<?php $client = S3Client::factory([ 'region' => 'YOUR-REGION', 'version' => 'latest', 'signature' => 'v4' ]);

Saat menggunakan PHP SDK v3, atur parameter signature_version ke v4 selama konstruksi klien layanan Amazon S3:

<?php $s3 = new Aws\S3\S3Client([ 'version' => '2006-03-01', 'region' => 'YOUR-REGION', 'signature_version' => 'v4' ]);
SDK Python-Boto

Tentukan hal berikut dalam berkas konfigurasi default boto:

[s3] use-sigv4 = True
Ruby SDK

Ruby SDK-Versi 1: Atur parameter :s3_signature_version ke :v4 saat mengonstruksi klien:

s3 = AWS::S3::Client.new(:s3_signature_version => :v4)

Ruby SDK-Versi 3: Atur parameter signature_version ke v4 saat mengonstruksi klien:

s3 = Aws::S3::Client.new(signature_version: 'v4')
SDK .NET

Tambahkan yang berikut ini ke kode sebelum membuat klien Amazon S3:

AWSConfigsS3.UseSignatureVersion4 = true;

Atau, tambahkan yang berikut ini ke file konfigurasi:

<appSettings> <add key="AWS.S3.UseSignatureVersion4" value="true" /> </appSettings>

 

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

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.