AWS S3 (Amazon Web Services S3) ini merupakan salah satu layanan cloud computing yang disediakan oleh Amazon untuk mengkoleksi atau menyimpan file atau dikenal dengan bucket storage. S3 ini singkatan dari Simple Storage Service.
Dengan adanya layanan ini, kamu bisa menyimpan beberapa file ke dalam bucket storage tersebut yang akan disebarkan secara umum atau privat. Selain itu, layanan ini bisa upload aplikasi berbasis web yang bersifat static web yang dimana tidak menggunakan interpreter back-end sama sekali.
Layanan ini cocok bagi kamu yang ingin membangun aplikasi website portofolio, galeri, streaming, landing page, dan sebagainya. Asalkan, aplikasi tersebut tidak menggunakan bahasa pemrograman yang melibatkan interpreter.
Layanan ini termasuk salah satu layanan yang kategori Free Tier untuk mendaftar akun AWS Personal sehingga tidak dikenakan tagihan pada saat setiap aktivitas di dalam layanan S3 selama tidak melewati batasan aturan dari Free Tier itu sendiri.
Artikel ini memberikan tutorial cara upload file ke AWS S3 dengan bahasa pemrograman PHP di XAMPP Windows. Pada tutorial kali ini akan dibagikan 2 bagian yaitu :
1. Membuat S3 Bucket Storage Baru.
2. Membuat Program untuk Upload File ke S3 dengan PHP.
Daftar Isi
SEBELUM MULAI TUTORIAL INI :
Hal-hal yang harus perhatikan sebelum mulai tutorial ini yaitu :
♦ Pastikan telah install composer di PC atau laptop.
♦ Pastikan menggunakan XAMPP versi terbaru atau PHP versi 7 ke atas.
♦ Pastikan ada koneksi internet.
♦ Bagi AWS Personal Free Tier, pastikan kamu telah membaca aturan batasan Free Tier untuk layanan S3.
LANGKAH-LANGKAH
1. Aktifkan aplikasi web browser di PC atau laptop.
2. Ketikkan aws.amazon.com di address bar, tekan Enter.
3. Klik My Account >> Pilihlah AWS Management Console.
4. Masukkan username IAM atau email dengan benar, klik Next.
5. Masukkan password dengan benar, klik Sign In.
6. Klik Services >> Pilihlah S3.
7. Klik Create Bucket untuk membuat bucket storage baru.
8a. Masukkan nama bucket yang sesuai keinginan. Untuk Region, pilihlah US East (N. Virginia) us-east-1.
8b. Hilangkan centang Block all public access. Hal ini dilakukan agar dapat mengunggah file ke S3 melalui kemanapun dan bucket tersebut dapat diakses oleh siapapun. Kemudian, centangkan I acknowledge that the current …….
8c. Pada bagian yang lain dibiarkan saja, klik Create Bucket.
Tampilan Hasil Pembuatan Bucket storage yang baru.
Pada tampilan untuk bucket yang baru selesai dibuat yang muncul Objects can be public di opsi Access. Hal ini menandakan bucket tersebut bisa diakses, tetapi masih dalam lingkungan AWS saja.
9. Klik nama bucket storage yang tadi, untuk diberikan permission publik agar bucket tersebut bisa diakses dan diedit dari manapun.
10. Klik Permission.
11. Pada bagian Bucket Policy, klik Edit.
12. Masukkan kode perintah untuk memberi hak akses untuk read dan write ke dalam kolom kosong tadi.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::[nama bucket kamu]/*" } ] }
Kamu bisa melihat contoh gambar di bawah ini.
13. Klik Save Change.
14. Klik Amazon S3 untuk kembali ke halaman dashboard.
Tampilan hasil untuk pemberian permission publik terhadap bucket storage tadi.
Kini, kamu bisa mengakses dan upload file ke S3 (bucket storage) dengan menggunakan bahasa pemrograman apapun.
15. Klik Services >> Pilihlah IAM. Hal ini berguna untuk memberi batasan hak akses terhadap layanan S3 yang diperlukan agar akun AWS tersebut tetap aman dari pemakaian layanan yang tidak bertanggung jawab.
16. Klik Groups untuk membuat grup baru.
17. Berikan nama grup dengan sesuai keinginan kamu, klik Next Step.
18. Carilah “AmazonS3FullAccess” dan centangkan, klik Next Step.
19. Jika kamu telah yakin dengan nama grup dan pemilihan attach policy tadi, klik Create Group.
Tampilan hasil pembuatan grup baru tadi di IAM.
20. Klik User untuk membuat pengguna baru.
21. Berikan nama pengguna yang sesuai keinginan dan centangkan Programming access agar pengguna ini dapat bekerja di AWS API, CLI, SDK, dan lainnya dengan memberikan kunci akses, klik Next: Permissions.
22. Pilihlah grup yang akan user tersebut dimasukkan ke dalam grup yang dipilih, klik Next:Tags.
23. Boleh diisi atau dikosongkan saja, klik Next: Review.
24. Jika kamu telah yakin membuat nama pengguna (user name) dan memasukkannya ke dalam grup yang dipilih dengan benar, klik Create User.
25. Klik Unduh.csv untuk mendapatkan kode Access key ID dan Secret access key. Kedua kode tersebut akan digunakan pada saat membuat program sederhana untuk upload file ke S3 dengan PHP di XAMPP Windows.
26. Buka File Credensial.csv tadi dengan aplikasi teks editor untuk melihat kode-kode yang di dalam file .csv tersebut.
27. Kamu bisa melihat kode-kode user name (nama pengguna) yang telah kamu buat tadi di AWS IAM. Penulis telah memberikan keterangan di dalamnya.
Selesai.
CATATAN :
Kamu harus berhati-hati dengan kode-kode Access key ID dan Secret access key di IAM itu jangan sampai jatuh ke tangan orang yang tidak bertanggung jawab yang menimbulkan permasalahan akun AWS kamu. Apalagi kredensial tersebut digunakan secara publik walaupun secara endpoint saja.
KESIMPULAN
Setiap pembuatan project atau aplikasi dengan menggunakan layanan AWS yang terutama AWS S3 (Simple Storage Service) pasti kredensial (credential) dari pengguna IAM agar layanan tersebut bisa diakses dengan baik sebagaimana mestinya dan terhindar dari pemakaian layanan AWS yang tidak wajar sehingga dapat mengancam reputasi akun AWS kamu.