ยินดีด้วย

การใช้ AWS Security สำหรับนักพัฒนา

Rahul Singh

Technical Product Manager

ตัวตนที่ AWS ตรวจสอบ

สิ่งที่สรุปได้

  • Actor และ principal: AWS ตรวจสอบตัวตนของใคร
  • explicit deny มาก่อนเสมอ และถ้าไม่มีเงื่อนไขใดตรงเลยก็ถือเป็น deny เช่นกัน

ภาพแสดงคำขอทั้งกระบวนการตั้งแต่ต้นจนจบ ด้านบนเป็นกล่องสีเทาขีดฆ่าแสดงคีย์เข้าถึงระยะยาวที่ใช้ตลอดไป มีป้ายกำกับว่า AKIA ด้านล่างเป็นบทบาท (role) ที่จำกัดตามงาน ซึ่งผ่าน AWS STS เพื่อขอข้อมูลรับรองชั่วคราวที่ใช้ได้ 1 ชั่วโมง มีป้ายกำกับว่า ASIA จากนั้นเข้าสู่คำขอที่มีลายเซ็นแบบ SigV4 คำขอนี้จะผ่านประตูตรวจสอบตามลำดับ ได้แก่ การปฏิเสธแบบชัดเจน (explicit deny) ที่หยุดคำขอ การอนุญาตที่ตรงเงื่อนไข (matching allow) ที่ให้ผ่านต่อไปได้ และแถบเส้นประที่ไม่มีเงื่อนไขใดตรงเลย ซึ่งถือเป็นการปฏิเสธโดยนัย (implicit deny) คำขอที่ผ่านทั้งหมดจะออกไปในรูปแบบการเรียก AWS API

การใช้ AWS Security สำหรับนักพัฒนา

ตัวตนที่ AWS ตรวจสอบ

สิ่งที่สรุปได้

  • Actor และ principal: AWS ตรวจสอบตัวตนของใคร
  • explicit deny มาก่อนเสมอ และถ้าไม่มีเงื่อนไขใดตรงเลยก็ถือเป็น deny เช่นกัน
  • ใช้ role ที่มีอายุหนึ่งชั่วโมง ไม่ใช่ key ที่ใช้ได้ตลอดไป
  • ใช้ SigV4 กับทุกคำขอ และเซ็นล่วงหน้าสำหรับคำขอเดียว

ภาพแสดงคำขอทั้งกระบวนการตั้งแต่ต้นจนจบ ด้านบนเป็นกล่องสีเทาขีดฆ่าแสดงคีย์เข้าถึงระยะยาวที่ใช้ตลอดไป มีป้ายกำกับว่า AKIA ด้านล่างเป็นบทบาท (role) ที่จำกัดตามงาน ซึ่งผ่าน AWS STS เพื่อขอข้อมูลรับรองชั่วคราวที่ใช้ได้ 1 ชั่วโมง มีป้ายกำกับว่า ASIA จากนั้นเข้าสู่คำขอที่มีลายเซ็นแบบ SigV4 คำขอนี้จะผ่านประตูตรวจสอบตามลำดับ ได้แก่ การปฏิเสธแบบชัดเจน (explicit deny) ที่หยุดคำขอ การอนุญาตที่ตรงเงื่อนไข (matching allow) ที่ให้ผ่านต่อไปได้ และแถบเส้นประที่ไม่มีเงื่อนไขใดตรงเลย ซึ่งถือเป็นการปฏิเสธโดยนัย (implicit deny) คำขอที่ผ่านทั้งหมดจะออกไปในรูปแบบการเรียก AWS API

การใช้ AWS Security สำหรับนักพัฒนา

ใครเข้าถึงอะไรได้บ้าง

สิ่งที่สรุปได้

  • user pool ทำหน้าที่ยืนยันตัวตนผู้ใช้ ส่วน identity pool แจกจ่าย credential
  • ตรวจสอบ token ก่อน แล้วค่อยตั้งข้อสงสัยกับ claim

ภาพแสดงคำขอหนึ่งรายการที่ผ่านทุกชั้นของระบบ ผู้ใช้ของ tenant เข้าถึง Amazon Cognito ซึ่งวาดเป็นกล่องสองกล่องในกรอบเดียว ได้แก่ user pool ที่ยืนยันตัวตนผู้ใช้ และ identity pool ที่แจกจ่าย AWS credential ด้านล่างเป็น token ที่มีสามส่วน ได้แก่ header, payload และ signature โดยมีเพียง signature เท่านั้นที่ขีดกรอบสีเขียว จากนั้นคำขอเข้าสู่ Amazon API Gateway ซึ่งระบุว่าตรวจสอบก่อนที่โค้ดของคุณจะทำงาน โดยมีตัวเลือก JWT authorizer, Lambda authorizer และ IAM auth ด้านล่างนั้น ฟังก์ชัน report ดึงค่าจาก Secrets Manager และแสดงผลบรรทัดที่ปิดบังข้อมูลไว้ว่า pw เท่ากับเครื่องหมายดอกจัน 4 ตัว ชั้นสิทธิ์สามชั้นค่อย ๆ แคบลงด้านล่าง ได้แก่ identity policy, resource policy และ permissions boundary แบบเส้นประ ด้านล่างสุด แถวหนึ่งของตารางที่ใช้ร่วมกันถูกไฮไลต์และติดแท็กว่า LeadingKeys ขณะที่อีกสองแถวของ tenant อื่นยังคงเป็นเส้นประสีเทา

การใช้ AWS Security สำหรับนักพัฒนา

ใครเข้าถึงอะไรได้บ้าง

สิ่งที่สรุปได้

  • user pool ทำหน้าที่ยืนยันตัวตนผู้ใช้ ส่วน identity pool แจกจ่าย credential
  • ตรวจสอบ token ก่อน แล้วค่อยตั้งข้อสงสัยกับ claim
  • identity, resource, boundary: สามชั้น คำตอบเดียว
  • เงื่อนไข tenant หนึ่งข้อ, Scan ที่เลี่ยงผ่านมันไปได้ และรหัสผ่านที่หลุดออกจาก log

ภาพแสดงคำขอหนึ่งรายการที่ผ่านทุกชั้นของระบบ ผู้ใช้ของ tenant เข้าถึง Amazon Cognito ซึ่งวาดเป็นกล่องสองกล่องในกรอบเดียว ได้แก่ user pool ที่ยืนยันตัวตนผู้ใช้ และ identity pool ที่แจกจ่าย AWS credential ด้านล่างเป็น token ที่มีสามส่วน ได้แก่ header, payload และ signature โดยมีเพียง signature เท่านั้นที่ขีดกรอบสีเขียว จากนั้นคำขอเข้าสู่ Amazon API Gateway ซึ่งระบุว่าตรวจสอบก่อนที่โค้ดของคุณจะทำงาน โดยมีตัวเลือก JWT authorizer, Lambda authorizer และ IAM auth ด้านล่างนั้น ฟังก์ชัน report ดึงค่าจาก Secrets Manager และแสดงผลบรรทัดที่ปิดบังข้อมูลไว้ว่า pw เท่ากับเครื่องหมายดอกจัน 4 ตัว ชั้นสิทธิ์สามชั้นค่อย ๆ แคบลงด้านล่าง ได้แก่ identity policy, resource policy และ permissions boundary แบบเส้นประ ด้านล่างสุด แถวหนึ่งของตารางที่ใช้ร่วมกันถูกไฮไลต์และติดแท็กว่า LeadingKeys ขณะที่อีกสองแถวของ tenant อื่นยังคงเป็นเส้นประสีเทา

การใช้ AWS Security สำหรับนักพัฒนา

พิสูจน์ก่อน แล้วค่อยปล่อยใช้งาน

สิ่งที่สรุปได้

  • เข้ารหัสโดยค่าเริ่มต้น แต่ต้องรู้ว่าใช้โหมดใดและ key เป็นของใคร
  • มีประตูสองชั้นบน key และต้องเปิดทั้งคู่

ภาพแสดงสี่แถบ ระหว่างส่งข้อมูล (in transit) ไคลเอนต์เข้าถึง Amazon S3 ผ่านช่องทางที่มีป้ายกำกับ aws:SecureTransport ส่วนข้อมูลที่พัก (at rest) KMS key ที่ไม่เคยออกนอกระบบจะเรียก GenerateDataKey เพื่อสร้าง data key อยู่เหนือประตูสองชั้นที่ต้องเปิดทั้งคู่ ได้แก่ IAM policy และ key policy ด้านล่างแสดงสิ่งที่ trail เก็บไว้ ได้แก่ userIdentity, eventName, sourceIPAddress และ errorCode พร้อมแถบเส้นประระบุว่า data event ปิดอยู่จนกว่าจะร้องขอ ถัดมาเป็นแถบ granted ที่วาดแบบเส้นประและกว้าง มีส่วนที่ทึบขนาดเล็กแสดง used อยู่ภายใน แคบลงจนกลายเป็น policy ที่รัดกุมขึ้น ด้านล่างสุด คำถามหกข้อที่มีลำดับหมายเลขนำไปสู่ขั้นตอนการ deploy

การใช้ AWS Security สำหรับนักพัฒนา

พิสูจน์ก่อน แล้วค่อยปล่อยใช้งาน

สิ่งที่สรุปได้

  • เข้ารหัสโดยค่าเริ่มต้น แต่ต้องรู้ว่าใช้โหมดใดและ key เป็นของใคร
  • มีประตูสองชั้นบน key และต้องเปิดทั้งคู่
  • trail จะระบุชื่อ principal ได้ ถ้ามีการบันทึกไว้
  • เทียบสิทธิ์ที่ได้รับกับที่ใช้จริง แล้วตอบคำถามหกข้อ

ภาพแสดงสี่แถบ ระหว่างส่งข้อมูล (in transit) ไคลเอนต์เข้าถึง Amazon S3 ผ่านช่องทางที่มีป้ายกำกับ aws:SecureTransport ส่วนข้อมูลที่พัก (at rest) KMS key ที่ไม่เคยออกนอกระบบจะเรียก GenerateDataKey เพื่อสร้าง data key อยู่เหนือประตูสองชั้นที่ต้องเปิดทั้งคู่ ได้แก่ IAM policy และ key policy ด้านล่างแสดงสิ่งที่ trail เก็บไว้ ได้แก่ userIdentity, eventName, sourceIPAddress และ errorCode พร้อมแถบเส้นประระบุว่า data event ปิดอยู่จนกว่าจะร้องขอ ถัดมาเป็นแถบ granted ที่วาดแบบเส้นประและกว้าง มีส่วนที่ทึบขนาดเล็กแสดง used อยู่ภายใน แคบลงจนกลายเป็น policy ที่รัดกุมขึ้น ด้านล่างสุด คำถามหกข้อที่มีลำดับหมายเลขนำไปสู่ขั้นตอนการ deploy

การใช้ AWS Security สำหรับนักพัฒนา

เส้นทางต่อจากนี้

 

  • บริการถัดไป: คำถามหกข้อเดิม
  • ไม่ว่าผู้ให้บริการจะเป็นใคร: identity, authorization, keys, evidence

ภาพแสดงคอลัมน์เดียวอ่านจากบนลงล่าง บล็อกที่มีป้ายกำกับว่า this course ประกอบด้วย identity, authorization และ keys and evidence มีลูกศรชี้ลงไปยังแผงที่มีป้ายกำกับว่า the next service ซึ่งผู้เรียกผ่านคำถามหกข้อไปยังข้อมูลแล้วไปยัง trail ลูกศรที่สองชี้ลงไปยังแผงที่มีป้ายกำกับว่า DVA-C02 ซึ่งมีแถบข้อสอบสี่ส่วน โดยส่วนที่สองเติมสีส้มและมีป้ายกำกับว่า Security 26% อยู่เหนือแถวเครื่องหมายถูกสีเขียว 21 อัน หัวข้อว่า domain two skills ลูกศรเส้นประดำเนินต่อลงไปยังแผงเส้นประที่เขียนว่า SCS-C03, Security - Specialty ระบุว่าเป็นขั้นต่อไปในเส้นทางด้านความปลอดภัยของคุณ

การใช้ AWS Security สำหรับนักพัฒนา

เส้นทางต่อจากนี้

 

  • บริการถัดไป: คำถามหกข้อเดิม
  • ไม่ว่าผู้ให้บริการจะเป็นใคร: identity, authorization, keys, evidence
  • DVA-C02: Security คิดเป็นสัดส่วนใหญ่ของข้อสอบ และคอร์สนี้ครอบคลุมโดเมนนั้น
  • ถัดจากนั้น: AWS Certified Security - Specialty ข้อสอบที่เน้นด้านความปลอดภัยโดยเฉพาะ

ภาพแสดงคอลัมน์เดียวอ่านจากบนลงล่าง บล็อกที่มีป้ายกำกับว่า this course ประกอบด้วย identity, authorization และ keys and evidence มีลูกศรชี้ลงไปยังแผงที่มีป้ายกำกับว่า the next service ซึ่งผู้เรียกผ่านคำถามหกข้อไปยังข้อมูลแล้วไปยัง trail ลูกศรที่สองชี้ลงไปยังแผงที่มีป้ายกำกับว่า DVA-C02 ซึ่งมีแถบข้อสอบสี่ส่วน โดยส่วนที่สองเติมสีส้มและมีป้ายกำกับว่า Security 26% อยู่เหนือแถวเครื่องหมายถูกสีเขียว 21 อัน หัวข้อว่า domain two skills ลูกศรเส้นประดำเนินต่อลงไปยังแผงเส้นประที่เขียนว่า SCS-C03, Security - Specialty ระบุว่าเป็นขั้นต่อไปในเส้นทางด้านความปลอดภัยของคุณ

การใช้ AWS Security สำหรับนักพัฒนา

ขั้นตอนถัดไป

การใช้ AWS Security สำหรับนักพัฒนา

Preparing Video For Download...