Amazon Simple Storage Service (S3) - AWS Mobile SDK

AWS Mobile SDK for Xamarin sekarang disertakan dalam AWS SDK for .NET. Panduan ini menjadi referensi versi yang diarsipkan dari Mobile SDK for Xamarin.

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

Amazon Simple Storage Service (S3)

Apa itu S3?

Amazon Simple Storage Service (Amazon S3), menyediakan developer seluler dengan penyimpanan objek yang aman, tahan lama, sangat dapat diskalakan. Amazon S3 mudah digunakan, memiliki antarmuka layanan web yang sederhana untuk menyimpan dan mengambil data dalam jumlah berapa pun dan dari mana pun di web. Dengan Amazon S3, Anda hanya membayar untuk penyimpanan yang benar-benar Anda gunakan. Tidak ada biaya minimum dan tidak ada biaya penyiapan.

Amazon S3 menyediakan penyimpanan objek hemat biaya untuk berbagai kasus penggunaan termasuk aplikasi cloud, distribusi konten, backup dan pengarsipan, pemulihan bencana, dan analitik big data.

Untuk informasi tentang ketersediaan Wilayah AWS S3, lihat Ketersediaan Wilayah Layanan AWS.

Konsep Kunci

Bucket

Setiap objek yang Anda simpan di Amazon S3 berada di dalam bucket. Anda dapat menggunakan bucket untuk mengelompokkan objek terkait dengan cara yang sama dengan Anda menggunakan direktori untuk file kelompok dalam sistem file. Bucket memiliki properti, seperti izin akses dan status versi, dan Anda dapat menentukan wilayah tempat Anda ingin mereka berada.

Untuk mem-pelajari selengkapnya tentang Bucket S3, lihat Bekerja dengan bucket dalam Panduan Developer S3.

Objek

Objek adalah data yang Anda simpan di Amazon S3. Setiap objek berada dalam bucket yang Anda buat di wilayah AWS tertentu.

Objek yang disimpan di suatu wilayah tidak pernah keluar dari wilayah tersebut kecuali Anda secara tegas mentransfernya ke wilayah lain. Misalnya, objek yang disimpan di wilayah EU (Ireland) tidak akan pernah meninggalkan wilayah itu. Objek yang disimpan di wilayah Amazon S3 secara fisik tetap berada di wilayah tersebut. Amazon S3 tidak menyimpan salinan atau memindahkannya ke wilayah lain mana pun. Namun, Anda dapat mengakses objek dari mana saja, selama Anda memiliki izin yang diperlukan untuk melakukannya.

Objek dapat berupa jenis file apa pun: citra, backup, data, film, dll. Objek bisa berukuran sebesar 5 TB. Anda dapat memiliki jumlah objek tak terbatas dalam satu bucket.

Sebelum Anda dapat mengunggah objek ke Amazon S3, Anda harus memiliki izin tertulis ke bucket. Untuk informasi lebih lanjut tentang pengaturan izin bucket, lihat Mengedit Izin bucket dalam Panduan Developer S3.

Untuk mem-pelajari lebih lanjut tentang objek S3, lihat Bekerja dengan Objek dalam Panduan Developer S3.

Metadata Objek

Setiap objek di Amazon S3 memiliki serangkaian pasangan nilai-kunci yang mewakili metadata-nya. Ada dua tipe metadata:

  • Metadata sistem – Kadang-kadang diproses oleh Amazon S3, misalnya, Content-Type, dan Content-Length.

  • Metadata pengguna – Tidak pernah diproses oleh Amazon S3. Metadata pengguna disimpan bersama objek dan dikembalikan bersama objek. Dengan ukuran maksimum metadata pengguna adalah 2 KB, kunci dan nilainya harus sesuai dengan standar AS-ASCII.

Untuk mem-pelajari selengkapnya tentang metadata objek S3, lihat Mengedit Metadata Objek.

Penyiapan Proyek

Prasyarat

Untuk menggunakan Amazon S3 dalam aplikasi Anda, Anda harus menambahkan SDK ke proyek Anda. Untuk melakukannya, ikuti petunjuk di Menyiapkan AWS Mobile SDK for .NET and Xamarin.

Buat Bucket S3

Amazon S3 menyimpan sumber daya aplikasi Anda di bucket S3 Amazon - kontainer penyimpanan cloud yang berada di wilayah tertentu. Setiap bucket Amazon S3 harus memiliki nama yang unik secara global. Anda dapat menggunakan Konsol Amazon S3 untuk membuat bucket.

  1. Masuklah ke Konsol Amazon S3 dan klik Buat Bucket.

  2. Masukkan nama bucket, pilih wilayah, dan klik Buat.

Mengatur Izin untuk S3

Kebijakan IAM role default memberikan akses aplikasi Anda ke Amazon Mobile Analytics dan Amazon Cognito Sync. Agar kolam identitas Cognito Anda dapat mengakses Amazon S3, Anda harus mengubah peran kolam identitas.

  1. Buka Konsol Identity and Access Management dan klik Peran yang di panel sebelah kiri.

  2. Ketik nama kolam identitas Anda ke dalam kotak pencarian. Dua peran akan dicantumkan: satu untuk pengguna yang tidak di-autentikasi dan satu untuk pengguna di-autentikasi.

  3. Klik peran untuk pengguna yang tidak di-autentikasi (hal ini akan menambahkan unauth pada nama kolam identitas Anda).

  4. Klik Buat Kebijakan Peran, pilih Generator Kebijakan, dan kemudian klik Pilih.

  5. Pada halaman Edit Izin, masukkan pengaturan yang ditunjukkan dalam gambar berikut, yang mengganti Amazon Resource Name (ARN) dengan punya Anda sendiri. ARN dari bucket S3 terlihat seperti arn:aws:s3:::examplebucket/* dan terdiri dari wilayah di mana bucket berada dan nama bucket. Pengaturan yang ditunjukkan di bawah ini akan memberikan kolam identitas Anda izin penuh untuk mengakses semua tindakan untuk bucket yang ditentukan.

    Edit Permissions interface for AWS policy creation, showing options for Amazon S3 access control.
  1. Klik tombol Tambah Pernyataan dan kemudian klik Langkah Selanjutnya.

  2. Penuntun akan menunjukkan konfigurasi yang telah Anda buat. Klik Terapkan Kebijakan.

Untuk informasi lebih lanjut tentang pemberian akses ke S3, lihat Memberikan Akses ke bucket Amazon S3.

(opsional) Mengonfigurasi Versi Tanda Tangan untuk Permintaan S3

Setiap interaksi dengan Amazon S3 diautentikasi atau dilakukan secara anonim. AWS menggunakan algoritme Tanda Tangan Versi 4 atau Tanda Tangan Versi 2 untuk meng-autentikasi panggilan ke layanan.

Semua wilayah AWS baru yang dibuat setelah Januari 2014 hanya men-support Tanda Tangan Versi 4. Namun, banyak wilayah lama yang masih men-support permintaan Tanda Tangan Versi 4 dan Tanda Tangan Versi 2.

Jika bucket Anda berada di salah satu wilayah yang tidak men-support permintaan Tanda Tangan Versi 2 sebagaimana tercantum diHalaman ini, Anda harus mengaturAWSConfigsS3.UseSignatureVersion4 properti untuk “true” seperti:

AWSConfigsS3.UseSignatureVersion4 = true;

Untuk informasi tentang versi Tanda Tangan AWS, lihat Meng-autentikasi Permintaan (Tanda Tangan AWS Versi 4).

Mengintegrasikan S3 dengan Aplikasi Anda

Ada dua cara untuk berinteraksi dengan S3 dalam aplikasi Xamarin Anda. Kedua metode tersebut diuraikan secara mendalam dalam topik-topik berikut:

Topik