Amazon Simple Storage Service (Amazon S3) merupakan layanan object storage dari AWS yang dirancang untuk menyimpan dan mengelola berbagai jenis data dengan tingkat skalabilitas, durabilitas, dan keamanan yang tinggi. Sebelum dapat menyimpan objek di Amazon S3, pengguna perlu membuat sebuah bucket sebagai wadah penyimpanan. Salah satu tipe bucket yang paling umum digunakan adalah General Purpose Bucket, yang cocok untuk berbagai kebutuhan seperti penyimpanan file aplikasi, backup, data lake, hingga static website.
Meskipun proses pembuatan bucket terlihat sederhana, terdapat sejumlah konfigurasi penting yang perlu dipahami, seperti penamaan bucket, pengaturan Object Ownership, Public Access, versioning, enkripsi, hingga Object Lock. Konfigurasi yang tepat tidak hanya membantu menjaga keamanan data, tetapi juga memastikan bucket sesuai dengan kebutuhan operasional dan praktik terbaik yang direkomendasikan AWS.
Ikuti langkah-langkah berikut untuk membuat Amazon S3 General Purpose Bucket melalui AWS Management Console sekaligus memahami fungsi dari setiap opsi konfigurasi yang tersedia selama proses pembuatannya.
1. Cari “S3” pada kolom pencarian

2. Pada halaman S3 pilih “general purpose buckets” kemudian pilih “Create Bucket”

3. Untuk membuat nama S3 bucket saat ini terdapat 2 opsi:
a. Global namespace

Untuk penggunaan global namespace, nama S3 bucket adalah unik untuk setiap S3 bucket diantara setiap S3 bucket yang ada di dunia, berikut adalah aturan dari S3 bucket global namespace:
- Nama bucket harus diantara 3 (min) and 63 (max) karakter.
- Nama bucket hanya dapat berbentuk huruf kecil, angka, titik(.), and garis strip(-).
- Nama bucket harus diawali dan diakhiri dengan huruf atau angka.
- Nama bucket tidak boleh mengandung titik secara berurutan (misalkan, my..bucket).
- Nama bucket tidak boleh dalam bentuk IP address (misalkan, 192.168.5.4).
- Nama bucket tidak boleh diawali prefix xn--.
- Nama bucket tidak boleh diawali prefix sthree-.
- Nama bucket tidak boleh diawali prefix amzn-s3-demo-.
- Nama bucket tidak boleh diakhiri suffix -s3alias.
- Nama bucket tidak boleh diakhiri suffix –ol-s3.
- Nama bucket tidak boleh diakhiri suffix .mrap.
- Nama bucket tidak boleh diakhiri suffix –x-s3.
- Nama bucket tidak boleh diakhiri suffix –table-s3.
- Nama bucket tidak boleh diakhiri suffix -an
- Nama bucket yang akan menggunakan Amazon S3 Transfer Acceleration tidak boleh mengandung titik(.) pada namanya (misalkan, my.bucket).
b. Regional namespace

Untuk penggunaan regional namespace nama harus unik di antara S3 bucket yang sudah dimiliki di dalam akun.
4. Bucket ownership secara default adalah Disable dan direkomendasikan, namun kita dapat mengubahnya menjadi enable dengan 2 pilihan:

a. Bucket owner preferred
Pada pilihan ini setiap objek yang di upload ke dalam S3 bucket merupakan milik dari akun yang membuat S3 bucket. Misalkan akun A membuat S3 bucket dan Akun B upload ke dalam S3 bucket tersebut. Maka, pemilik dari objek yang diupload adalah si pemilik bucket yaitu akun A.

b. Object writer
Pada pilihan ini setiap objek yang di upload ke dalam S3 bucket merupakan milik dari akun yang melakukan upload ke dalam S3 bucket. Misalkan akun A membuat S3 bucket dan akun B upload ke dalam S3 bucket tersebut. Maka, pemilik dari objek yang diupload adalah tetap akun B walaupun berada dalam S3 bucket milik akun A.

5. Block all public access pada S3 merupakan pilihan default dan rekomendasi dari AWS, kita dapat tetap membuat S3 bucket secara private dengan membiarkan itu default, atau bisa membuat S3 bucket menjadi terbuka ke public dengan uncheck seluruh block public.

- Block all public access [default]: S3 bucket sama sekali tidak bisa diakses melalui jaringan internet.
- Block public access to bucket and objects granted new access control lists (ACLs): pada ceklis yang ini S3 akan blok public akses jika ada objek baru yang dibuka ke public menggunakan ACL.
- Block public access to buckets and objects granted through any access control lists (ACLs): pada ceklis ini semua akses public melalui ACL akan diblok untuk objek yang sudah ada ataupun objek baru.
- Block public access to buckets and objects granted through new public bucket or access point policies: pada ceklis ini akan blok jika ada bucket policy dan access policy yang membuka akses ke publik pada objek yang baru dan tidak berpengaruh pada objek yang sudah ada.
- Block public and cross-account access to buckets and objects through any public bucket or access point policies: pada ceklis ini akan blok bucket policy dan access point policy yang membuka akses pada publik dan lintas akun untuk objek yang sudah ada maupun objek yang baru.
6. Enable bucket versioning untuk mengaktifkan versi pada objek, jika di aktifkan kita dapat memiliki versi untuk objek dengan nama yang sama. Dapat digunakan juga untuk mencegah penghapusan objek yang tidak disengaja di S3 bucket.

7. Tambahkan tagging pada bucket untuk pengelompokan misalkan berdasarkan projek, berdasarkan nama departemen.

8. Pilih enkripsi yang akan digunakan
- Server-side encryption with Amazon S3 managed keys (SSE-S3): pada pilihan ini sepenuhnya untuk yang membuat, mengatur, dan menyimpan kunci enkripsi diatur oleh Amazon S3. Enkripsi menggunakan pilihan ini gratis tidak ada tambahan biaya.
- Server-side encryption with AWS Key Management Service keys (SSE-KMS): untuk penggunaan ini enkripsi menggunakan layanan KMS pada AWS. Untuk pengaturan enkripsi sepenuhnya diatur oleh pengguna untuk memperbolehkan siapa yang boleh melakukan enkripsi dan deskripsi. Penggunaan ini ada tambahan biaya layanan KMS.
- Dual-layer server-side encryption with AWS Key Management Service keys (DSSE-KMS): pada pilihan ini enkripsi yang dilakukan dua kali menggunakan kunci yang berbeda.
9. Pilih bucket key
- Enable (Default): S3 akan membuat kunci local sehingga jika menggunakan KMS tidak akan memanggil layanan KMS terus-menerus, sehingga dapat meminimalisir cost yang terjadi akibat pemanggilan layanan KMS untuk melakukan enkripsi dan deskripsi.
- Disable: S3 Bucket akan selalu memanggil KMS setiap melakukan enkripsi dan deskripsi objek.
10. [Advance] Pada pilihan object lock ini merupakan optional biasanya digunakan untuk kasus penggunaan tertentu misalnya seperti rekam medis atau data hukum.
- Enable: akan melakukan perubahan pada S3 bucket menjadi model WORM (Write Once, Read Many). Sehingga jika mengaktifkan ini S3 bucket dapat mencegah penghapusan data atau perubahan data secara tidak sengaja. Dan dapat juga melakukan pencegahan serangan ransomeware. Jika mengaktifkan fitur ini pengguna juga perlu mendefinisikan berapa lama objek tersebut dikunci.
- Disable (Default): objek yang dimasukkan dapat dilakukan penghapusan atau overwrite kapan saja oleh yang memiliki izin.
Siap Membangun Penyimpanan Data yang Aman di AWS? Hubungi CDT!
Membangun infrastruktur penyimpanan yang aman dan andal dimulai dari konfigurasi yang tepat. Amazon S3 menyediakan berbagai fitur untuk membantu melindungi data, mengelola akses, serta mendukung kebutuhan penyimpanan yang terus berkembang. Memahami setiap opsi konfigurasi saat membuat bucket akan membantu memastikan data tersimpan dengan aman dan sesuai dengan kebutuhan bisnis.
Sebagai AWS Premier Tier Services Partner, Central Data Technology (CDT) siap membantu organisasi dalam merancang, mengimplementasikan, dan mengoptimalkan solusi penyimpanan berbasis AWS. Mulai dari konfigurasi Amazon S3, migrasi data, hingga penerapan praktik keamanan terbaik, tim ahli CDT siap mendampingi perjalanan cloud Anda agar lebih aman, efisien, dan sesuai dengan kebutuhan bisnis.
Writer: Endriawan Tria Sukmara
