Membangun lingkungan AWS praktik terbaik Anda

Mengapa saya sebaiknya menyiapkan lingkungan AWS multiakun?

AWS memungkinkan Anda untuk bereksperimen, berinovasi, dan menskalakan lebih cepat, sekaligus menyediakan lingkungan cloud yang paling fleksibel dan aman. Cara penting di mana AWS memastikan keamanan aplikasi Anda adalah akun AWS. Akun AWS menyediakan keamanan, akses, dan batasan penagihan alami untuk sumber daya AWS Anda, dan memungkinkan untuk mencapai independensi serta isolasi sumber daya. Misalnya, pengguna di luar akun Anda tidak akan memiliki akses ke sumber daya Anda secara default. Begitu juga biaya sumber daya AWS yang Anda konsumsi dialokasikan ke akun Anda. Meskipun Anda dapat memulai perjalanan AWS dengan satu akun, AWS menyarankan agar Anda membuat beberapa akun seiring dengan pertumbuhan ukuran dan kompleksitas beban kerja Anda. Menggunakan lingkungan multiakun merupakan praktik terbaik AWS yang menawarkan beberapa manfaat:

  • Inovasi dengan berbagai persyaratan yang cepat – Anda dapat mengalokasikan akun AWS Anda ke tim, proyek, atau produk yang berbeda dalam perusahaan Anda agar menjamin masing-masing dapat berinovasi dengan cepat sekaligus mengizinkan persyaratan keamanannya.
  • Penagihan yang disederhanakan – Menggunakan beberapa akun AWS akan menyederhanakan cara Anda mengalokasikan biaya AWS dengan membantu mengidentifikasi lini produk atau layanan apa yang bertanggung jawab untuk biaya AWS.
  • Kontrol keamanan yang fleksibel – Anda dapat menggunakan beberapa akun AWS untuk mengisolasi beban kerja atau aplikasi yang memiliki persyaratan keamanan tertentu, atau yang perlu memenuhi panduan ketat untuk kepatuhan seperti HIPAA atau PCI.
  • Adaptasi dengan proses bisnis secara mudah – Anda dapat dengan mudah mengatur beberapa akun AWS sesuai berbagai keperluan proses bisnis perusahaan yang memiliki persyaratan operasional, regulasi, dan anggaran yang berbeda-beda.

Pada akhirnya, lingkungan AWS multiakun memungkinkan Anda untuk menggunakan cloud agar bergerak lebih cepat dan membangun berbagai produk serta layanan, sekaligus memastikan Anda melakukannya dengan cara yang aman, dapat diskalakan, dan tangguh. Namun, bagaimana sebaiknya Anda membangun lingkungan AWS multiakun Anda? Anda mungkin memiliki pertanyaan seperti, struktur akun apa yang harus digunakan, kebijakan dan batasan apa yang harus diterapkan, atau bagaimana cara menyiapkan lingkungan Anda untuk audit.

Bagian selanjutnya dalam panduan ini akan memandu Anda untuk elemen-elemen membangun lingkungan AWS multiakun yang aman dan produktif, seringkali disebut sebagai “zona landasan,” sesuai rekomendasi AWS. Ini merepresentasikan praktik terbaik yang dapat digunakan untuk membangun kerangka kerja awal sekaligus memungkinkan fleksibilitas seiring dengan peningkatan beban kerja AWS Anda.

Praktik terbaik untuk menyiapkan lingkungan AWS multiakun Anda

Dasar dari lingkungan AWS multiakun yang well-architected adalah AWS Organizations, sebuah layanan AWS yang memungkinkan Anda untuk secara terpusat mengelola dan mengatur beberapa akun. Sebelum memulai, mari kita berkenalan dengan beberapa istilah. Unit organisasi (OU) adalah pengelompokan logis akun dalam AWS Organization Anda. OU memungkinkan untuk menata akun Anda ke dalam suatu hierarki, dan memudahkan penerapan kontrol manajemen. Kebijakan AWS Organizations adalah apa yang Anda gunakan untuk menerapkan kontrol tersebut. Kebijakan Kontrol Layanan (SCP) adalah kebijakan yang menentukan tindakan layanan AWS, seperti Instans Run Amazon EC2, yang dapat dilakukan oleh akun dalam organisasi Anda.

Pertama, tentukan pengelompokan akun apa atau OU apa yang sebaiknya Anda buat. OU Anda harus didasarkan pada fungsi atau sekelompok kontrol umum dan bukan cerminan dari struktur pelaporan perusahaan Anda. AWS merekomendasikan Anda untuk memulai dengan pertimbangan keamanan dan infrastruktur. Sebagian besar bisnis memiliki tim terpusat yang melayani keseluruhan organisasi untuk keperluan tersebut. Karena itu, kami menyarankan untuk membuat OU dasar untuk fungsi-fungsi spesifik ini:

  • Infrastruktur: Digunakan untuk layanan infrastruktur bersama seperti jaringan dan layanan IT. Buat akun untuk masing-masing jenis layanan infrastruktur yang Anda perlukan.
  • Keamanan: Digunakan untuk layanan keamanan. Buat akun untuk arsip log, akses baca saja keamanan, peralatan keamanan, dan break-glass.

Karena sebagian besar perusahaan memiliki persyaratan kebijakan berbeda untuk beban kerja produksi, infrastruktur dan keamanan dapat memiliki OU nested untuk nonproduksi (SDLC) dan produksi (Prod). Akun dalam OU SDLC meng-host beban kerja nonproduksi dan karenanya tidak boleh memiliki dependensi produksi dari akun lain. Jika terdapat perbedaan dalam kebijakan OU antara beberapa tahapan siklus hidup, SDLC dapat dibagi menjadi beberapa OU (misalnya dev dan pre-prod). Akun dalam OU Prod meng-host beban kerja produksi.

Terapkan kebijakan pada tingkat OU untuk mengatur lingkungan Prod dan SDLC sesuai persyaratan Anda. Secara umum, menerapkan kebijakan pada tingkat OU merupakan praktik yang lebih baik daripada pada tingkat akun individual karena akan menyederhanakan manajemen kebijakan dan pemecahan masalah potensial.

Setelah layanan pusat dibuat, kami menyarankan untuk membuat OU yang secara langsung berkaitan dengan membangun atau menjalankan produk atau layanan Anda. Banyak pelanggan AWS membangun OU ini setelah membangun fondasi.

  • Sandbox: Menampung akun AWS yang dapat digunakan setiap developer untuk bereksperimen dengan layanan AWS. Memastikan agar akun-akun ini dapat dilepaskan dari jaringan internal dan menyiapkan proses untuk membatasi pengeluaran untuk mencegah penggunaan berlebih.
  • Beban kerja: Menampung akun AWS yang meng-host layanan aplikasi yang menghadap ke eksternal. Anda harus menstrukturkan OU di bawah lingkungan SDLC dan Prod (serupa dengan OU fondasi) untuk mengisolasi dan dengan ketat mengontrol beban kerja produksi.

Setelah OU fondasi dan yang berorientasi pada produksi dibangun, kami menyarankan untuk menambahkan OU tambahan untuk pemeliharaan dan ekspansi berkelanjutan tergantung pada keperluan spesifik Anda. Berikut ini adalah tema umum berdasarkan praktik para pelanggan AWS:

  • Persiapan Kebijakan: Menampung akun AWS tempat Anda dapat menguji usulan perubahan kebijakan sebelum menerapkannya secara luas ke organisasi. Mulai dengan mengimplementasikan perubahan pada tingkat akun dalam OU yang dituju, dan perlahan mulai sebarkan ke akun lain, OU, dan ke seluruh organisasi.
  • Ditangguhkan: Menampung akun AWS yang telah ditutup dan menunggu untuk dihapus dari organisasi. Lampirkan SCP ke OU ini yang menolak semua tindakan. Pastikan bahwa akun ditandai dengan detail agar dapat dilacak jika perlu dipulihkan.
  • Pengguna Bisnis Individual: Akses OU terbatas yang berisi akun AWS untuk para pengguna bisnis (bukan developer) yang mungkin perlu membuat aplikasi terkait produktivitas bisnis, misalnya menyiapkan bucket S3 untuk berbagi laporan atau file dengan partner.
  • Pengecualian: Menampung akun AWS yang digunakan untuk kasus penggunaan bisnis yang memiliki persyaratan keamanan atau audit khusus, yang berbeda dari yang telah ditetapkan dalam OU Beban Kerja. Misalnya, menyiapkan akun AWS khusus untuk aplikasi atau fitur rahasia baru. Gunakan SCP pada tingkat akun untuk memenuhi keperluan khususnya. Pertimbangkan untuk menyiapkan sistem Deteksi dan Bereaksi menggunakan CloudWatch Events dan Aturan AWS Config.
  • Deployment: Berisi akun AWS yang ditujukan untuk deployment CI/CD. Anda dapat membuat OU ini jika Anda memiliki model tata kelola dan operasional yang berbeda untuk deployment CI/CD dibandingkan untuk akun dalam OU Beban Kerja (Prod dan SDLC). Distribusi CI/CD membantu mengurangi dependensi organisasi terhadap lingkungan CI/CD bersama yang dioperasikan oleh tim pusat. Untuk setiap set akun AWS SDLC/Prod untuk suatu aplikasi dalam OU Beban Kerja, buat akun untuk CI/CD di bawah OU Deployment.
  • Transisional: Ini digunakan sebagai area penampungan sementara untuk akun dan beban kerja yang sudah ada sebelum memindahkannya ke area standar organisasi Anda. Ini mungkin karena akun-akun tersebut merupakan bagian dari akuisisi, sebelumnya dikelola oleh pihak ketiga, atau merupakan akun warisan dari struktur organisasi lama. 

Penutup

Strategi multiakun yang well-architected membantu Anda berinovasi lebih cepat di AWS, sekaligus memastikan bahwa Anda memenuhi kebutuhan keamanan dan skalabilitas. Kerangka kerja yang dijelaskan dalam halaman ini merepresentasikan praktik terbaik AWS yang sebaiknya Anda gunakan sebagai titik awal perjalanan AWS.

Untuk memulai, baca Panduan Memulai AWS Organizations untuk membangun lingkungan AWS multiakun Anda sendiri. Atau, Anda dapat menggunakan AWS Control Tower untuk membantu Anda dengan cepat menyiapkan lingkungan AWS awal yang aman dengan hanya beberapa klik.