Skip to main content

AWS Nitro Enclaves

Nitro Enclaves ถูกออกแบบมาเพื่อตอบโจทย์การประมวลผล ข้อมูลที่มีความละเอียดอ่อนสูง (Highly Sensitive Data) บนคลาวด์ใน สภาพแวดล้อมคอมพิวเตอร์ที่แยกตัวออกมาอย่างสมบูรณ์ ข้อมูลเหล่านี้อาจรวมถึง:

  • ข้อมูลระบุตัวบุคคล (PII)
  • ข้อมูลด้านสุขภาพ
  • ข้อมูลทางการเงิน
  • ข้อมูลบัตรเครดิต
  • หรือข้อมูลลับอื่น ๆ

ก่อนหน้านี้ การสร้างสภาพแวดล้อมแยกตัวสำหรับประมวลผลข้อมูลเหล่านี้จำเป็นต้องสร้าง VPC ใหม่, จำกัดการเข้าถึงและเครือข่าย ซึ่งยุ่งยากและซับซ้อน Nitro Enclaves จึงเป็นทางเลือกที่ง่ายและปลอดภัยมากขึ้น

An image

Nitro Enclaves คืออะไร?

  • เป็น Virtual Machines ที่ แยกตัวสูง (highly isolated), แข็งแกร่ง (hardened) และมีข้อจำกัดสูง

  • ต่างจาก container คือ:

    • ไม่มี persistent storage
    • ไม่มี interactive access
    • ไม่สามารถเข้าถึงผ่าน SSH
    • ไม่มี ความสามารถด้านเครือข่ายภายนอก

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

คุณสมบัติด้านความปลอดภัยของ Nitro Enclaves

  1. Cryptographic Attestation:

    • รันได้เฉพาะโค้ดที่ได้รับอนุญาตและ signed เท่านั้น
    • โค้ดต้องถูก signed ก่อน deployment
  2. AWS KMS Encryption:

    • ข้อมูลสำคัญเข้าถึงได้เฉพาะใน Enclave เท่านั้น
    • เพิ่มความปลอดภัยให้ข้อมูลและกระบวนการ

กรณีการใช้งาน (Use Cases)

  • การประมวลผล private key
  • การจัดการข้อมูล บัตรเครดิต
  • การทำ secure multi-party computation
  • กรณีอื่น ๆ ที่ต้องการ ระดับความปลอดภัยสูงสุด บน EC2

การทำงานของ Nitro Enclaves

  1. เปิดใช้งาน EC2 ที่รองรับ Nitro
  2. เปิด EnclaveOptions เป็น true เพื่อสร้าง Nitro Enclave ภายใน EC2 instance
  3. ใช้ Nitro CLI แปลงแอปพลิเคชันเป็น Enclave Image File (EIF)
  4. ใช้ EIF สร้าง Enclave บน EC2 instance
  5. Enclave ใช้ VPC, Memory, CPU, Kernel ร่วมกับ host แต่ ยังคงแยกตัวภายในอย่างสูง
  6. EC2 host ทำงานบน Nitro Hypervisor
  7. EC2 และ Enclave แยกตัวแต่สื่อสารกันผ่านช่องทาง local ที่ปลอดภัย

สรุป

  • Nitro Enclaves ให้ สภาพแวดล้อมประมวลผลข้อมูลสำคัญที่ปลอดภัยและแยกตัวสูง บน EC2
  • ใช้ Nitro Hypervisor และมาตรการความปลอดภัยเข้มงวด เช่น cryptographic attestation และ KMS encryption
  • ป้องกันความสมบูรณ์ของข้อมูลและโค้ด

Key Takeaways

  1. Nitro Enclaves เป็น สภาพแวดล้อมคอมพิวเตอร์แยกตัว สำหรับประมวลผลข้อมูลสำคัญ เช่น PII, ข้อมูลสุขภาพ และข้อมูลทางการเงิน
  2. เป็น VM ที่ แข็งแกร่ง, แยกตัวสูง, ไม่มี persistent storage, ไม่มี interactive access, และไม่มี external networking
  3. รันได้เฉพาะโค้ดที่ signed และ KMS encryption ทำให้ข้อมูลเข้าถึงได้เฉพาะ Enclave
  4. Nitro Enclaves รันบน EC2 ที่รองรับ Nitro และสื่อสารกับ host instance ผ่าน ช่องทาง local ที่ปลอดภัย