Layanan cloud AWS dan endpoint yang menghubungkan aplikasi
Amazon Web Services (AWS) adalah organisasi penyedia layanan cloud yang menyediakan kemampuan untuk membangun dan mengoperasikan aplikasi serta beban kerja lainnya. Penawarannya mencakup komputasi, penyimpanan, basis data, analitik, integrasi aplikasi, dan berbagai bidang lainnya. Perbedaan yang perlu dipahami adalah bahwa AWS menyediakan banyak layanan dengan tujuan berbeda, bukan satu aplikasi dengan satu alur kerja.
Domain amazonaws.com merupakan ruang nama endpoint layanan AWS, tempat perangkat lunak dapat terhubung ke masing-masing layanan dan sumber daya AWS. Situs informasi publik AWS adalah aws.amazon.com, sehingga domain endpoint dan beranda pemasarannya memiliki peran berbeda. Memahami perbedaan ini membantu menjelaskan mengapa suatu aplikasi dapat menghubungi amazonaws.com tanpa seseorang membuka situs AWS.
Apa yang dapat dibangun dan dioperasikan dengan bantuan AWS?
AWS diluncurkan pada 2006 dan menyediakan kemampuan cloud yang dapat digunakan organisasi untuk menyusun dan mengoperasikan beban kerja. Materi resmi yang disediakan menjelaskan layanan untuk menjalankan aplikasi, menyimpan informasi, menggunakan basis data, dan menghubungkan sistem terdistribusi. Karena itu, memilih AWS melibatkan identifikasi kemampuan yang dibutuhkan suatu beban kerja dan pemahaman tentang layanan yang sesuai.
Katalog layanannya menggambarkan cakupan ini tanpa menjadikan semua layanan dapat saling menggantikan. EC2 dijelaskan sebagai penyedia server virtual, S3 sebagai penyimpanan objek, dan Lambda sebagai layanan untuk menjalankan kode tanpa mengelola server atau klaster. Ketiganya merupakan komponen penyusun yang berbeda, meskipun aplikasi yang menggunakannya dapat mengirim permintaan dalam kelompok domain besar yang sama.
| Kebutuhan beban kerja | Contoh yang dijelaskan dalam materi AWS yang disediakan | Perbedaan praktis |
|---|---|---|
| Menjalankan beban kerja aplikasi | EC2 dan Lambda | Layanan komputasi menawarkan pendekatan berbeda untuk menjalankan kode. |
| Menyimpan objek | S3 | Penyimpanan objek memiliki tujuan yang berbeda dari basis data relasional. |
| Menggunakan basis data | RDS dan DynamoDB | AWS mencakup layanan basis data relasional dan NoSQL. |
| Menghubungkan komponen aplikasi | API Gateway, SQS, dan Step Functions | Akses API, antrean pesan, dan alur kerja memenuhi kebutuhan integrasi yang berbeda. |
| Menganalisis dan mengamati beban kerja | Athena dan CloudWatch | Menjalankan kueri data dan memantau operasi merupakan aktivitas terpisah. |
Cakupan yang luas ini membuat AWS relevan bagi pengembang yang membutuhkan beberapa kemampuan cloud dalam suatu beban kerja. Hal ini juga menimbulkan tugas pemilihan: organisasi harus mengidentifikasi layanan, model akses, dan tanggung jawab operasional yang sesuai untuk aplikasinya. Domain induk yang dikenal tidak menghilangkan kebutuhan untuk membuat keputusan tersebut.
Apa kegunaan amazonaws.com?
Dokumentasi AWS mendefinisikan endpoint sebagai titik masuk URL untuk layanan web AWS. Banyak endpoint menggunakan amazonaws.com sebagai bagian dari nama host, bersama informasi yang mengidentifikasi layanan dan terkadang Region AWS. Perangkat lunak menggunakan alamat ini untuk mengakses titik masuk layanan yang relevan.
Permintaan ke endpoint AWS dapat menjadi bagian dari operasi aplikasi, bukan kunjungan yang disengaja ke suatu situs web. Berbagai permintaan di bawah domain induk tersebut dapat berkaitan dengan layanan, akun, sumber daya, dan model akses yang berbeda. Akhiran yang sama memberikan lebih sedikit konteks aplikasi dibandingkan permintaan lengkapnya.
Membaca endpoint layanan
Contoh yang didokumentasikan, dynamodb.us-west-2.amazonaws.com, memuat lebih banyak informasi berguna daripada amazonaws.com saja. Alamat tersebut mengidentifikasi DynamoDB dan menyertakan kode Region us-west-2. Informasi itu mempersempit konteks layanan, tetapi tidak mengungkap semua hal tentang pemanggil atau sumber daya yang terlibat.
- Nama layanan: membantu mengidentifikasi kemampuan AWS yang sedang dihubungi.
- Kode Region: memberikan konteks wilayah ketika endpoint tersebut mengikuti pola regional.
- Nama host lengkap: mempertahankan perbedaan yang hilang ketika pengamatan hanya mencatat domain induk.
- Jalur permintaan: memberikan konteks permintaan tambahan yang harus ditafsirkan menggunakan dokumentasi layanan.
- Aplikasi peminta: membantu menghubungkan alamat teknis dengan aktivitas yang diharapkan seseorang atau organisasi.
Detail ini perlu dipertimbangkan bersama. Nama host layanan merupakan bukti yang berguna tentang suatu tujuan, sedangkan aplikasi dan permintaan memberikan konteks tentang alasan tujuan tersebut digunakan. Nama layanan maupun domain induk tidak dapat secara mandiri memastikan tujuan penggunaan data yang terlibat.
Mengapa beberapa alamat AWS menyertakan Region?
Banyak endpoint AWS memuat kode Region karena menyediakan titik masuk regional untuk suatu layanan. AWS juga mendokumentasikan endpoint umum dan global untuk beberapa layanan. Perilaku endpoint yang tepat ditentukan oleh masing-masing layanan, sehingga satu pola penamaan tidak boleh diterapkan ke seluruh katalog.
Bagi pengembang, pertanyaan praktisnya adalah endpoint mana yang didokumentasikan oleh layanan yang dipilih untuk operasi yang dimaksud. Mengenali kode Region dapat membantu penelusuran tersebut, tetapi menebak alamat dari pola layanan lain tidak dapat menggantikan pemeriksaan. Referensi Umum AWS dan dokumentasi endpoint layanan menyediakan titik awalnya.
| Jenis endpoint | Hal yang dipastikan oleh riset yang disediakan | Hal yang masih perlu diperiksa |
|---|---|---|
| Regional | Banyak nama host menyertakan kode layanan, kode Region, dan amazonaws.com. | Endpoint yang didokumentasikan untuk layanan dan Region yang dipilih. |
| Umum | Beberapa layanan memiliki endpoint umum. | Cara layanan tertentu menangani permintaan yang dikirim ke endpoint tersebut. |
| Global | AWS mendokumentasikan endpoint global untuk beberapa layanan. | Operasi dan perilaku regional yang didokumentasikan oleh layanan tersebut. |
Manfaat endpoint khusus layanan adalah perutean yang lebih jelas dan pemisahan antar kemampuan. Konsekuensinya bagi orang yang meninjau aktivitas jaringan adalah bahwa pengamatan dengan wildcard seperti *.amazonaws.com menyembunyikan banyak detail berguna tersebut. Pengamatan itu mengelompokkan tujuan-tujuan yang mungkin memiliki maksud penggunaan yang sangat berbeda.
Apakah alamat AWS mengidentifikasi pihak yang menjalankan aplikasi?
Kemunculan amazonaws.com tidak mengidentifikasi pelanggan, beban kerja, atau pemilik aplikasi yang bertanggung jawab atas suatu permintaan. AWS memberikan konteks layanan cloud, tetapi domain induknya tidak menjelaskan akun atau sumber daya di balik aktivitas tersebut. Domain itu juga tidak memastikan informasi apa yang sedang disimpan, diambil, atau diproses.
Hal ini penting ketika seseorang melihat koneksi yang tidak dikenal dalam aktivitas aplikasi atau catatan jaringan. Alamat tersebut mungkin membantu mengidentifikasi layanan AWS, tetapi penafsiran koneksinya membutuhkan bukti dari perangkat lunak yang membuatnya. Pertanyaan yang tepat adalah apa yang dilakukan aplikasi tersebut dengan tujuan itu.
Peninjauan yang berguna memisahkan pertanyaan-pertanyaan berikut:
- Aplikasi mana yang memulai permintaan? Hubungkan tujuan dengan perangkat lunak dan aktivitas yang sedang ditinjau.
- Apa tujuan lengkapnya? Pertahankan nama host dan jalurnya, bukan hanya akhiran domain.
- Layanan mana yang diwakilinya? Bandingkan alamat dengan dokumentasi AWS yang relevan.
- Operasi apa yang diharapkan? Pastikan bagaimana permintaan berkaitan dengan perilaku aplikasi yang dimaksud.
- Model akses apa yang berlaku? Periksa kredensial dan izin yang diperlukan oleh layanan dan sumber daya tersebut.
- Apa yang masih belum terjelaskan? Biarkan kepemilikan, tujuan penggunaan data, atau otorisasi tetap belum dipastikan ketika konteks yang tersedia tidak memastikannya.
Pendekatan ini menghindari penyamaan identitas infrastruktur dengan identitas aplikasi. Pendekatan ini juga membuat penyelidikan lebih spesifik: ketidakpastian tentang permintaan suatu aplikasi menjadi pertanyaan tentang aplikasi dan layanan tersebut, bukan kesimpulan tentang setiap tujuan yang memiliki akhiran sama.
Bagaimana kredensial dan izin memengaruhi akses?
Kredensial dan izin AWS menjawab pertanyaan yang berbeda. Kredensial mengautentikasi pemanggil, sedangkan izin mengotorisasi tindakan yang boleh dilakukan pemanggil tersebut. Mengetahui layanan yang memiliki suatu endpoint tidak memastikan apakah pemanggil tertentu dapat menggunakan sumber daya tertentu.
Persyaratan yang tepat berasal dari masing-masing layanan dan model aksesnya. Pengembang perlu membaca ikhtisar kredensial keamanan AWS bersama dokumentasi layanan dan operasi yang dimaksud. Keberadaan endpoint saja tidak menjelaskan seluruh persyaratan tersebut.
| Pertanyaan akses | Konsep yang relevan | Hal yang tidak dapat dipastikan hanya dari konsep tersebut |
|---|---|---|
| Siapa yang mengirim permintaan? | Autentikasi menggunakan kredensial | Apakah pemanggil boleh melakukan tindakan yang diminta. |
| Apakah pemanggil boleh melakukan tindakan ini? | Otorisasi melalui izin | Apakah tindakan atau sumber daya lain yang tidak terkait juga diizinkan. |
| Persyaratan apa yang berlaku di sini? | Dokumentasi khusus layanan | Aturan akses universal untuk setiap endpoint AWS. |
Tanggung jawab mencakup lebih dari sekadar mengenali penyedia
AWS menerbitkan model tanggung jawab bersama untuk memahami pembagian tanggung jawab saat menggunakan layanannya. Hal itu merupakan persoalan yang terpisah dari pengenalan nama host AWS. Tim perlu mempertimbangkan tanggung jawab mereka bersama persyaratan akses layanan, bukan menganggap bahwa identitas penyedia menjawab pertanyaan pada tingkat aplikasi.
Bukti yang disediakan mendukung penjelasan pembagian ini sebagai bagian dari evaluasi AWS. Bukti tersebut tidak memastikan bagaimana pelanggan tertentu mengonfigurasi aplikasi atau sumber daya. Penilaian terhadap penerapan tertentu membutuhkan informasi tentang penerapan tersebut.
Haruskah organisasi mengizinkan atau memblokir seluruh kelompok domain?
Keputusan yang berlaku untuk seluruh domain memiliki cakupan luas karena amazonaws.com mencakup banyak layanan dan beban kerja yang mungkin tidak saling berkaitan. Memblokir seluruh kelompok domain dapat mengganggu aplikasi yang bergantung pada tujuan-tujuan tersebut. Mengizinkannya tanpa membedakan setiap permintaan membiarkan identitas dan tujuan masing-masing permintaan tetap tidak terjelaskan.
Kedua pilihan tersebut tidak otomatis ditentukan oleh keberadaan nama host AWS. Administrator jaringan membutuhkan kebijakan organisasi, tujuan aplikasi peminta, dan konteks tujuan yang khusus untuk layanan tersebut. Riset yang disediakan mendukung pemeriksaan detail-detail itu sebelum menentukan cakupan akses yang sesuai.
| Situasi | Langkah lanjutan yang berguna | Batas bukti yang tersedia |
|---|---|---|
| Aplikasi yang dikenal menghubungi endpoint AWS | Bandingkan tujuan dengan penggunaan layanan yang diharapkan dari aplikasi tersebut. | Mengenal aplikasi tidak menjelaskan setiap permintaannya. |
| Proses yang tidak dikenal menghubungi amazonaws.com | Identifikasi proses dan pertahankan konteks permintaan secara lengkap. | Domain induk tidak mengidentifikasi pemilik atau maksud proses tersebut. |
| Aturan yang diusulkan mencakup setiap subdomain | Nilai aplikasi dan layanan mana yang akan terdampak oleh aturan tersebut. | Wildcard menyembunyikan perbedaan antar tujuan. |
| Permintaan tampak mencurigakan | Selidiki aplikasi, sumber daya, dan konteks layanan yang relevan. | Identitas infrastruktur AWS bukan jaminan keamanan. |
Penalaran yang sama berlaku bagi seseorang yang mencoba memahami alamat yang tidak terduga. Mengenali AWS dapat menjelaskan kategori infrastrukturnya, tetapi tidak dapat memastikan apakah koneksi tersebut semestinya terjadi. Perilaku aplikasi dan tujuan permintaan tetap menjadi hal utama.
Di mana pengembang dapat menemukan dokumentasi, bantuan komunitas, atau kontak untuk pelaporan penyalahgunaan?
Indeks dokumentasi AWS merupakan titik masuk umum untuk panduan layanan. Referensi Umum dan halaman endpoint layanan sangat relevan saat mengidentifikasi alamat dan perilaku regional. Ikhtisar kredensial memberikan penjelasan pelengkap tentang autentikasi pemanggil.
AWS juga menyediakan re:Post sebagai layanan tanya jawab komunitas. Layanan ini memberi pengembang tempat untuk bertanya tentang penggunaan AWS, sedangkan sumber daya kontak resmi menyediakan jalur untuk dukungan dan persoalan dugaan penyalahgunaan. Diskusi komunitas dan pelaporan penyalahgunaan memiliki tujuan berbeda dan perlu dipilih sesuai kebutuhan.
- Mengidentifikasi endpoint: mulai dari Referensi Umum AWS dan dokumentasi endpoint.
- Memahami layanan: gunakan indeks dokumentasi untuk menemukan panduan layanan yang relevan.
- Memperjelas persyaratan akses: baca ikhtisar kredensial bersama dokumentasi izin layanan.
- Mengajukan pertanyaan implementasi: gunakan komunitas AWS re:Post.
- Menemukan sumber daya kontak atau pelaporan penyalahgunaan: lihat halaman kontak resmi AWS.
- Meninjau informasi privasi AWS: lihat Pemberitahuan Privasi AWS, sambil memeriksa secara terpisah aplikasi yang bertanggung jawab atas suatu permintaan.
AWS ditujukan bagi organisasi dan pengembang yang membutuhkan kemampuan cloud untuk menjalankan aplikasi, menyimpan informasi, mengintegrasikan komponen, dan mengoperasikan beban kerja. Bukti yang ada mendukung penggambaran amazonaws.com sebagai ruang nama endpoint yang menghubungkan perangkat lunak dengan kemampuan tersebut. Penjelasan ini sesuai bagi pembaca yang mengevaluasi layanan tertentu dan pengembang yang menerapkannya, asalkan mereka tetap memperhatikan konteks layanan, Region, aplikasi, dan akses yang tidak dapat diberikan oleh domain induk saja.
Respons yang berhasil bukan jaminan keamanan. Pengukuran menggambarkan satu pengamatan pada suatu waktu.
