การเข้าถึงที่ปลอดภัยด้วย Managed Identities

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

Anushika Agarwal

Cloud Data Engineer

ปัญหาของการใช้ secrets

  • Secrets ฝังอยู่ในโค้ดหรือไฟล์ config
  • หมุนเวียนหรือปกป้องได้ยาก

ความเสี่ยงของการฝัง secrets ในโค้ด

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

Managed identity

  • Identity ที่ปลอดภัยซึ่งกำหนดให้กับทรัพยากร Azure
  • ทรัพยากรเข้าถึงบริการอื่นได้อย่างปลอดภัย
  • ไม่ต้องจัดเก็บ credentials

Managed Identity

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

หลักการทำงาน

  • เป็น service principal ประเภทพิเศษ
  • ดูแลทั้งหมดโดย Azure
  • Azure จัดการการสร้าง การหมุนเวียน และการลบให้อัตโนมัติ

Managed Identity

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

ตัวอย่าง: แอป PeopleSphere HR

  • โมดูลเงินเดือนใช้ managed identity เพื่อเข้าถึง Key Vault

ตัวอย่าง - แอป PeopleSphere HR

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

System-assigned managed identity

  • การจัดสรร

    • Azure สร้าง identity ให้อัตโนมัติ
    • ไม่ต้องตั้งค่า credentials หรือ setup เอง
  • วงจรชีวิต

    • สิ้นสุดพร้อมกับทรัพยากร
    • ผูกกับทรัพยากรเดียว
  • การควบคุมการเข้าถึง

    • กำหนดบทบาทผ่าน Azure RBAC

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

User-assigned managed identity

  • การจัดสรร

    • สร้างเป็นทรัพยากร Azure แบบอิสระ
    • นโยบายการเข้าถึงเดียว ใช้ได้หลายทรัพยากร
  • วงจรชีวิต

    • นำกลับมาใช้ซ้ำได้กับหลายบริการ
    • ไม่ขึ้นกับทรัพยากรใดทรัพยากรหนึ่ง
  • การควบคุมการเข้าถึง

    • กำหนดบทบาทผ่าน Azure RBAC

User-Assigned Managed Identity

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

System vs. user-assigned: ความแตกต่างหลัก

หมวดหมู่ System-Assigned User-Assigned
การจัดสรร สร้างพร้อมกับทรัพยากร สร้างเป็นทรัพยากรแยกต่างหาก
วงจรชีวิต ผูกกับวงจรชีวิตของทรัพยากร เป็นอิสระจากวงจรชีวิตของทรัพยากร
การนำกลับมาใช้ซ้ำ ใช้ร่วมกันระหว่างทรัพยากรไม่ได้ นำกลับมาใช้ซ้ำข้ามบริการได้
การเข้าถึง ใช้ Azure RBAC ใช้ Azure RBAC
กรณีใช้งาน งานที่ใช้ทรัพยากรเดียว งานหลายทรัพยากรหรือการตั้งค่าล่วงหน้า
การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

บริการใดบ้างที่รองรับ managed identities?

  • บริการใดก็ได้ที่รองรับ Microsoft Entra authentication

  • ตัวอย่างที่พบบ่อย:

    • Virtual Machines
    • App Services
    • Azure Functions
    • Key Vault
    • Azure Storage
  • รายการทั้งหมด: Microsoft Docs - Supported Services

Virtual Machines

App Services

Azure Functions

Key Vault

Azure Storage

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

มาฝึกกันเถอะ!

การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

Preparing Video For Download...