การสร้างสภาพแวดล้อม AWS แนวทางปฏิบัติที่ดีที่สุดของคุณ

เหตุใดฉันจึงควรตั้งค่าสภาพแวดล้อม AWS แบบหลายบัญชี

AWS ช่วยให้คุณได้ทดลอง สร้างนวัตกรรม และปรับขนาดได้รวดเร็วยิ่งขึ้น ทั้งหมดนี้พร้อมมอบสภาพแวดล้อมระบบคลาวด์ที่ยืดหยุ่นและปลอดภัยที่สุด วิธีการสำคัญที่ AWS รับประกันความปลอดภัยของแอปพลิเคชัน คือ บัญชี AWS บัญชี AWS มีขอบเขตการรักษาความปลอดภัย การเข้าถึง และการเรียกเก็บเงินมาให้ตั้งแต่แรกสำหรับทรัพยากร AWS ของคุณ และช่วยให้คุณแยกทรัพยากรไม่ให้ขึ้นต่อกันได้ ตัวอย่างเช่น ผู้ใช้ภายนอกบัญชีของคุณไม่มีสิทธิ์เข้าถึงทรัพยากรของคุณตามค่าเริ่มต้น ในทำนองเดียวกัน ต้นทุนทรัพยากร AWS ที่คุณใช้จะถูกจัดสรรให้กับบัญชีของคุณ แม้ว่าคุณอาจเริ่มต้นเส้นทาง AWS ด้วยบัญชีเดียว แต่ AWS แนะนำให้คุณตั้งค่าหลายบัญชี เนื่องจากปริมาณงานของคุณมีขนาดและความซับซ้อนเพิ่มขึ้น การใช้สภาพแวดล้อมหลายบัญชีเป็นแนวทางปฏิบัติที่ดีที่สุดของ AWS ที่ให้ประโยชน์หลายประการ ได้แก่

  • นวัตกรรมที่รวดเร็วพร้อมข้อกำหนดที่หลากหลาย – คุณสามารถจัดสรรบัญชี AWS ให้กับทีม โปรเจ็กต์ หรือผลิตภัณฑ์ต่างๆ ภายในบริษัทของคุณได้ เพื่อรับรองว่าแต่ละบัญชีสามารถสร้างนวัตกรรมได้อย่างรวดเร็ว อีกทั้งยังอนุญาตให้มีข้อกำหนดด้านการรักษาความปลอดภัยของตนเองด้วย
  • การเรียกเก็บเงินที่ง่ายขึ้น – การใช้บัญชี AWS แบบหลายบัญชีช่วยลดความยุ่งยากในการจัดสรรค่าใช้จ่าย AWS โดยช่วยระบุว่าสายผลิตภัณฑ์หรือบริการใดที่รับผิดชอบค่าบริการของ AWS
  • การควบคุมการรักษาความปลอดภัยที่ยืดหยุ่น – คุณสามารถใช้บัญชี AWS แบบหลายบัญชีเพื่อแยกปริมาณงานหรือแอปพลิเคชันที่มีข้อกำหนดด้านการรักษาความปลอดภัยเฉพาะ หรือจำเป็นต้องปฏิบัติตามหลักเกณฑ์ที่เข้มงวดสำหรับการปฏิบัติตามข้อกำหนด เช่น HIPAA หรือ PCI
  • ปรับให้เข้ากับกระบวนการทางธุรกิจได้อย่างง่ายดาย – คุณสามารถจัดระเบียบบัญชี AWS แบบหลายบัญชีได้อย่างง่ายดายในลักษณะที่สะท้อนถึงความต้องการที่หลากหลายของกระบวนการทางธุรกิจของบริษัทคุณที่มีข้อกำหนดด้านการปฏิบัติงาน กฎระเบียบ และงบประมาณที่แตกต่างกันได้ดีที่สุด

สุดท้ายนี้ สภาพแวดล้อม AWS แบบหลายบัญชีช่วยให้คุณใช้ระบบคลาวด์เพื่อย้ายได้เร็วขึ้น และสร้างผลิตภัณฑ์และบริการที่มีความแตกต่าง ทั้งหมดนี้ช่วยรับรองได้ว่าคุณสามารถทำได้อย่างปลอดภัย ยืดหยุ่น และปรับขนาดได้ แต่คุณควรสร้างสภาพแวดล้อม AWS แบบหลายบัญชีอย่างไร คุณอาจมีคำถาม เช่น โครงสร้างบัญชีใดที่จะใช้ นโยบายและแนวป้องกันที่ควรปรับใช้ หรือจะตั้งค่าสภาพแวดล้อมของคุณสำหรับการตรวจสอบอย่างไร

ส่วนที่เหลือของคู่มือนี้จะแนะนำคุณเกี่ยวกับองค์ประกอบต่างๆ ในการสร้างสภาพแวดล้อม AWS แบบหลายบัญชีที่ปลอดภัยและมีประสิทธิภาพ ซึ่งมักเรียกกันว่า "Landing Zone" ตามที่ AWS แนะนำ ซึ่งแสดงถึงแนวทางปฏิบัติที่ดีที่สุดที่สามารถนำมาใช้เพื่อสร้างเฟรมเวิร์กเริ่มต้นได้ ในขณะที่ยังคงให้ความยืดหยุ่นเมื่อปริมาณงาน AWS ของคุณเพิ่มขึ้นเมื่อเวลาผ่านไป

แนวทางปฏิบัติที่ดีที่สุดสำหรับการตั้งค่าสภาพแวดล้อม AWS แบบหลายบัญชี

พื้นฐานของสภาพแวดล้อม AWS แบบหลายบัญชีที่ได้รับการออกแบบมาอย่างดี คือ AWS Organizations ซึ่งเป็นบริการของ AWS ที่ช่วยให้คุณสามารถจัดการและควบคุมบัญชีหลายบัญชีได้จากส่วนกลาง ก่อนเริ่ม มาทำความรู้จักกับคำศัพท์หลายคำกันก่อนดีกว่า หน่วยองค์กร (OU) คือการจัดกลุ่มเชิงตรรกะของบัญชีใน AWS Organization OU ช่วยให้คุณสามารถจัดระเบียบบัญชีของคุณเป็นลำดับชั้น และทำให้คุณใช้การควบคุมการจัดการได้ง่ายขึ้น นโยบายของ AWS Organizations คือสิ่งที่คุณใช้เพื่อปรับใช้การควบคุมดังกล่าว นโยบายควบคุมการบริการ (SCP) คือนโยบายที่กำหนดการดำเนินการบริการของ AWS เช่น อินสแตนซ์เรียกใช้ Amazon EC2 ที่บัญชีในองค์กรของคุณสามารถทำได้

ขั้นแรก ให้พิจารณาว่าคุณควรสร้างกลุ่มบัญชีหรือ OU ใด OU ของคุณควรอิงตามฟังก์ชันหรือชุดการควบคุมทั่วไป ไม่ใช่ตามโครงสร้างการรายงานของบริษัท AWS แนะนำให้คุณเริ่มต้นโดยคำนึงถึงเรื่องการรักษาความปลอดภัยและโครงสร้างพื้นฐานแต่แรก ธุรกิจส่วนใหญ่มีทีมงานแบบรวมศูนย์ที่ให้บริการทั้งองค์กรสำหรับความต้องการเหล่านั้น ดังนั้น เราขอแนะนำให้สร้างชุด OU พื้นฐานสำหรับฟังก์ชันเฉพาะเหล่านี้

  • โครงสร้างพื้นฐาน: ใช้สำหรับบริการโครงสร้างพื้นฐานที่ใช้ร่วมกัน เช่น เครือข่ายและบริการไอที สร้างบัญชีสำหรับบริการโครงสร้างพื้นฐานแต่ละประเภทที่คุณต้องการ
  • การรักษาความปลอดภัย: ใช้สำหรับบริการรักษาความปลอดภัย สร้างบัญชีสำหรับที่เก็บบันทึกถาวร การเข้าถึงแบบอ่านอย่างเดียวด้านการรักษาความปลอดภัย เครื่องมือรักษาความปลอดภัย และบัญชีฉุกเฉิน

เนื่องจากบริษัทส่วนใหญ่มีข้อกำหนดนโยบายที่แตกต่างกันสำหรับปริมาณงานการผลิต โครงสร้างพื้นฐานและการรักษาความปลอดภัยสามารถมี OU ที่ซ้อนกันสำหรับสภาพแวดล้อมนอกเหนือการผลิต (SDLC) และการผลิต (Prod) บัญชีใน SDLC OU จะโฮสต์ปริมาณงานนอกเหนือการผลิต ดังนั้นจึงไม่ควรพึ่งพาสภาพแวดล้อมการผลิตจากบัญชีอื่น หากนโยบาย OU มีความแตกต่างกันระหว่างขั้นตอนวงจรชีวิต สามารถแบ่ง SDLC ออกเป็น OU ได้หลายรายการ (เช่น สภาพแวดล้อมการพัฒนา (Dev) และสภาพแวดล้อมก่อนการผลิต (Pre-Prod)) บัญชีใน Prod OU จะโฮสต์ปริมาณงานการผลิต

ใช้นโยบายที่ระดับ OU เพื่อควบคุมสภาพแวดล้อม Prod และ SDLC ตามความต้องการของคุณ โดยทั่วไปแล้ว การใช้นโยบายที่ระดับ OU เป็นแนวทางปฏิบัติที่ดีกว่าการใช้นโยบายที่ระดับบัญชีบุคคล เนื่องจากจะทำให้จัดการนโยบายได้ง่ายขึ้นและช่วยแก้ปัญหาที่อาจเกิดขึ้นได้

เมื่อบริการส่วนกลางพร้อมแล้ว เราแนะนำให้สร้าง OU ที่เกี่ยวข้องโดยตรงกับการสร้างหรือการเรียกใช้ผลิตภัณฑ์หรือบริการของคุณ ลูกค้า AWS จำนวนมากสร้าง OU เหล่านี้หลังจากสร้างรากฐาน

  • แซนด์บ็อกซ์: มีบัญชี AWS ที่นักพัฒนาแต่ละคนสามารถใช้เพื่อทดลองกับบริการของ AWS ตรวจสอบให้แน่ใจว่าบัญชีเหล่านี้สามารถแยกออกจากเครือข่ายภายในและตั้งค่ากระบวนการเพื่อจำกัดการใช้จ่ายไม่ให้ใช้จ่ายมากเกินไป
  • ปริมาณงาน: ประกอบด้วยบัญชี AWS ที่โฮสต์บริการแอปพลิเคชันที่เชื่อมต่อกับภายนอกของคุณ คุณควรจัดโครงสร้าง OU ภายใต้สภาพแวดล้อม SDLC และ Prod (คล้ายกับ OU พื้นฐาน) เพื่อแยกและควบคุมปริมาณงานการผลิตอย่างเข้มงวด

ขณะนี้ได้สร้างทั้ง OU พื้นฐานและ OU ที่มุ่งเน้นการผลิตขึ้นมาแล้ว เราขอแนะนำให้เพิ่ม OU อื่นสำหรับการบำรุงรักษาและการขยายอย่างต่อเนื่อง ทั้งนี้ขึ้นอยู่กับความต้องการเฉพาะของคุณ ธีมทั่วไปบางส่วนตามแนวทางปฏิบัติจากลูกค้า AWS เดิม มีดังต่อไปนี้:

  • การกำหนดนโยบาย: มีบัญชี AWS ที่คุณสามารถทดสอบการเปลี่ยนแปลงนโยบายที่เสนอก่อนที่จะนำไปใช้กับองค์กรในวงกว้าง เริ่มต้นด้วยการนำการเปลี่ยนแปลงไปใช้ในระดับบัญชีใน OU ที่ต้องการ และค่อยๆ ดำเนินการกับบัญชีอื่น, OU และทั่วทั้งองค์กร
  • ถูกระงับ: มีบัญชี AWS ที่ปิดแล้วและกำลังรอให้ลบออกจากองค์กร แนบ SCP กับ OU นี้ซึ่งปฏิเสธการดำเนินการทั้งหมด ตรวจสอบให้แน่ใจว่าได้ติดแท็กบัญชีด้วยรายละเอียดสำหรับการตรวจสอบย้อนกลับ หากจำเป็นต้องกู้คืน
  • ผู้ใช้ธุรกิจรายบุคคล: OU ที่จำกัดการเข้าถึงซึ่งมีบัญชี AWS สำหรับผู้ใช้ธุรกิจ (ไม่ใช่นักพัฒนา) ที่อาจจำเป็นต้องสร้างแอปพลิเคชันที่เกี่ยวข้องกับผลิตภาพทางธุรกิจ เช่น ตั้งค่าบัคเก็ต S3 เพื่อแชร์รายงานหรือไฟล์กับคู่ค้า
  • ข้อยกเว้น: มีบัญชี AWS ที่ใช้สำหรับกรณีการใช้งานทางธุรกิจซึ่งมีข้อกำหนดด้านการรักษาความปลอดภัยหรือการตรวจสอบที่ปรับแต่งได้สูง ซึ่งแตกต่างจากข้อกำหนดที่กำหนดไว้ใน OU ปริมาณงาน ตัวอย่างเช่น การตั้งค่าบัญชี AWS สำหรับแอปพลิเคชันหรือคุณสมบัติใหม่ที่เป็นความลับโดยเฉพาะ ใช้ SCP ที่ระดับบัญชีเพื่อตอบสนองความต้องการเฉพาะ พิจารณาตั้งค่าระบบตรวจจับและตอบสนองโดยใช้ CloudWatch Events และ AWS Config Rules
  • การติดตั้งใช้จริง: มีบัญชี AWS สำหรับการปรับใช้งาน CI/CD คุณสามารถสร้าง OU นี้ได้หากคุณมีรูปแบบการกำกับดูแลและการดำเนินงานที่แตกต่างกันสำหรับการปรับใช้งาน CI/CD เมื่อเทียบกับบัญชีใน OU ปริมาณงาน (Prod และ SDLC) การกระจาย CI/CD ช่วยลดการพึ่งพาองค์กรในสภาพแวดล้อม CI/CD ที่ใช้ร่วมกันซึ่งดำเนินการโดยทีมงานส่วนกลาง สำหรับบัญชี SDLC/Prod ของ AWS แต่ละชุดสำหรับแอปพลิเคชันใน OU ปริมาณงาน ให้สร้างบัญชีสำหรับ CI/CD ภายใต้ OU การปรับใช้งาน
  • ช่วงเปลี่ยนผ่าน: ใช้เป็นพื้นที่พักชั่วคราวสำหรับบัญชีและปริมาณงานที่มีอยู่ ก่อนที่จะย้ายไปยังพื้นที่มาตรฐานขององค์กรคุณ อาจเป็นเพราะบัญชีเป็นส่วนหนึ่งของการจัดหาซึ่งก่อนหน้านี้ดำเนินโดยบุคคลภายนอก หรือเป็นบัญชีเดิมจากโครงสร้างองค์กรแบบเก่า 

สรุป

กลยุทธ์แบบหลายบัญชีที่ได้รับการออกแบบมาอย่างดีช่วยให้คุณสร้างนวัตกรรมได้เร็วยิ่งขึ้นใน AWS พร้อมทั้งรับรองว่าคุณจะตอบสนองความต้องการด้านการรักษาความปลอดภัยและความสามารถในการปรับขนาดของคุณได้อีกด้วย เฟรมเวิร์กที่อธิบายในหน้านี้แสดงถึงแนวทางปฏิบัติที่ดีที่สุดของ AWS ที่คุณควรใช้เป็นจุดเริ่มต้นในเส้นทาง AWS ของคุณ

หากต้องการเริ่มใช้งาน โปรดดูคู่มือการเริ่มต้นใช้งาน AWS Organizations เพื่อสร้างสภาพแวดล้อม AWS แบบหลายบัญชีของคุณเอง หรือคุณสามารถใช้ AWS Control Tower เพื่อช่วยคุณตั้งค่าสภาพแวดล้อม AWS เบื้องต้นที่ปลอดภัยได้อย่างรวดเร็วภายในไม่กี่คลิก

ทรัพยากรเพิ่มเติม