Shared Access Signatures (SAS)

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

Anushika Agarwal

Cloud Data Engineer

Shared Access Signature คืออะไร?

  • ให้ สิทธิ์เข้าถึงแบบจำกัด แก่ ทรัพยากรที่จัดเก็บ
  • ไม่เปิดเผย คีย์ของบัญชีที่จัดเก็บ

SAS

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

เปรียบเทียบ: SAS กับโทเค็นตู้หยอดเหรียญ

  • โทเค็นมีอายุ จำกัด (เช่น 30 วินาที)

  • โทเค็นอนุญาต เฉพาะการกระทำที่กำหนด (เช่น โคคา-โคลาหนึ่งกระป๋อง)

ตัวอย่าง SAS กับตู้หยอดเหรียญ

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

SAS ถูกรักษาความปลอดภัยอย่างไร?

  • เซ็นด้วย คีย์ของบัญชีที่จัดเก็บ

คีย์บัญชีที่จัดเก็บ

  • หรือด้วย Microsoft Entra ID

Microsoft Entra ID

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

ประเภทของ SAS

  • User Delegation SAS
    • ใช้ข้อมูลรับรอง Microsoft Entra
    • รองรับ Blob และ Data Lake Storage

SAS Tokens

  • Service SAS
    • ใช้ คีย์ของบัญชีที่จัดเก็บ
    • เข้าถึง บริการเดียว: Blob, Queue, Table หรือ File
  • Account SAS
    • ใช้ คีย์ของบัญชีที่จัดเก็บ
    • เข้าถึง หลายบริการ
    • รองรับการดำเนินงานระดับบริการ
การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

สถานการณ์จริง

  • สถานการณ์:

    • PeopleSphere แชร์รายงานเงินเดือนกับผู้ตรวจสอบภายนอก
  • ประเภท SAS: User Delegation SAS

  • สิทธิ์เข้าถึงแบบจำกัดขอบเขต:

    • ผู้ตรวจสอบเห็นเฉพาะรายงานที่จำเป็น
  • จำกัดเวลา:

    • สิทธิ์หมดอายุโดยอัตโนมัติ
  • ยืนยันตัวตนอย่างปลอดภัย:

    • ใช้ข้อมูลรับรอง Azure ของ PeopleSphere

User Delegation SAS

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

ทำความเข้าใจโครงสร้างของ SAS

องค์ประกอบของ SAS

  1. URI - เส้นทางทรัพยากร
  2. Token - กฎการเข้าถึงและลายเซ็น

SAS Token

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

องค์ประกอบของโทเค็น

SAS Token

  • sp: สิทธิ์ (เช่น r = อ่าน, w = เขียน)
  • st / se: เวลาเริ่มต้นและหมดอายุ
  • spr: โปรโตคอล (เช่น https เท่านั้น)
  • sr: ประเภททรัพยากร (b = blob, f = file)
  • sv: เวอร์ชัน Storage API
  • sig: ลายเซ็นสำหรับการตรวจสอบ
การรักษาความปลอดภัยบน Azure สำหรับนักพัฒนา

แนวปฏิบัติที่ดีในการใช้ SAS

  • ใช้ HTTPS เสมอ

  • ควรเลือกใช้ User Delegation SAS
  • กำหนดเวลาหมดอายุให้สั้น

Short Expiry

  • ให้สิทธิ์เฉพาะที่จำเป็น

Grant Least Access

  • หลีกเลี่ยงการใช้ SAS กับข้อมูลความเสี่ยงสูง

ข้อมูลที่มีความละเอียดอ่อนสูง

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

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

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

Preparing Video For Download...