0Pricing
AWS Security Academy · บทเรียน

SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ

เชื่อมต่อผู้ให้บริการอัตลักษณ์ภายนอกและการเข้าสู่ระบบแอปเข้ากับ AWS

SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ เป็นบทเรียน AWS Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AWS Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AWS Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

ความหมายของสหพันธภาพ

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

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

การเชื่อมโยงข้อมูลประจำตัวด้วย SAML 2.0

SAML (Security Assertion Markup Language) 2.0 เป็นมาตรฐานดั้งเดิมสำหรับการเชื่อมโยงข้อมูลประจำตัวในองค์กร

  • คุณลงทะเบียน IdP ใน IAM เป็น ผู้ให้บริการข้อมูลประจำตัว SAML
  • IdP จะส่ง ข้อมูลยืนยัน ที่ลงลายมือชื่อแล้วหลังจากผู้ใช้เข้าสู่ระบบ
  • AWS แลกเปลี่ยนข้อมูลดังกล่าวผ่าน STS เป็นข้อมูลรับรองชั่วคราวของบทบาท

วิธีนี้ใช้กันทั่วไปกับ Active Directory Federation Services และ IdP ขององค์กรที่มีลักษณะคล้ายกัน

การเชื่อมโยงข้อมูลประจำตัวด้วย OIDC

OIDC (OpenID Connect) เป็นมาตรฐานสมัยใหม่ที่ใช้โทเค็นและสร้างขึ้นบน OAuth 2.0

มาตรฐานนี้เหมาะอย่างยิ่งสำหรับการเชื่อมโยง งานประมวลผลและระบบ CI/CD ตัวอย่างเช่น กระบวนการต่อเนื่องของ GitHub Actions สามารถส่งโทเค็น OIDC และ AWS จะรับบทบาทโดยไม่ต้องจัดเก็บคีย์ คุณลงทะเบียนผู้ให้บริการเป็น ผู้ให้บริการข้อมูลประจำตัว OIDC ใน IAM

การเชื่อมโยงข้อมูลประจำตัวผ่านเว็บ

การเชื่อมโยงข้อมูลประจำตัวผ่านเว็บ ทำให้ผู้ใช้เข้าสู่ระบบด้วยผู้ให้บริการสาธารณะ เช่น Google, Facebook หรือ Amazon ซึ่งพบได้ทั่วไปในแอปมือถือและเว็บ

แอปจะส่งโทเค็นของผู้ให้บริการไปยัง STS ผ่าน AssumeRoleWithWebIdentity และรับข้อมูลรับรองชั่วคราวที่จำกัดขอบเขตไว้กับบทบาท ผู้ใช้ไม่จำเป็นต้องมีข้อมูลประจำตัว IAM

บทบาทของ STS

เส้นทางการเชื่อมโยงข้อมูลประจำตัวทั้งหมดมาบรรจบกันที่ STS (Security Token Service) STS แลกเปลี่ยนข้อมูลยืนยันภายนอกที่ผ่านการตรวจสอบแล้วเป็นข้อมูลรับรอง AWS อายุสั้นซึ่งผูกกับบทบาท IAM

  • SAML ใช้ AssumeRoleWithSAML
  • OIDC และข้อมูลประจำตัวผ่านเว็บใช้ AssumeRoleWithWebIdentity

สิทธิ์ของบทบาทจะกำหนดว่าผู้ใช้ที่เชื่อมโยงข้อมูลประจำตัวสามารถทำอะไรได้บ้าง

นโยบายความน่าเชื่อถือสำหรับการเชื่อมโยงข้อมูลประจำตัว

บทบาท IAM ที่ผู้ใช้ซึ่งเชื่อมโยงข้อมูลประจำตัวรับบทบาท จะมี นโยบายความน่าเชื่อถือ ซึ่งระบุ IdP เป็นผู้รับผิดชอบหลัก

เงื่อนไขในนโยบายความน่าเชื่อถือจะจำกัดว่าผู้ใช้รายใดจากผู้ให้บริการนั้นสามารถรับบทบาทได้ เช่น ตรวจสอบแอตทริบิวต์ SAML ที่ระบุหรือการอ้างสิทธิ์ sub ของ OIDC วิธีนี้ช่วยป้องกันไม่ให้ผู้ให้บริการที่มีขอบเขตกว้างมอบสิทธิ์แก่ทุกคน

{
  "Effect": "Allow",
  "Principal": { "Federated": "arn:aws:iam::111122223333:oidc-provider/token.actions.githubusercontent.com" },
  "Action": "sts:AssumeRoleWithWebIdentity",
  "Condition": { "StringLike": { "token.actions.githubusercontent.com:sub": "repo:my-org/my-repo:*" } }
}

Identity Center เทียบกับการเชื่อมโยงข้อมูลประจำตัวโดยตรง

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

ผู้ให้บริการ SAML หรือ OIDC โดยตรงของ IAM เป็นองค์ประกอบระดับล่างที่เหมาะกว่าสำหรับการเชื่อมโยง แอปพลิเคชันและงานประมวลผล หรือระบบเดิม การสอบคาดหวังให้คุณเลือก Identity Center สำหรับ SSO ของมนุษย์ และเลือกบทบาท OIDC สำหรับกระบวนการต่อเนื่อง

กลุ่มข้อมูลประจำตัวของ Amazon Cognito

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

ระบบแลกเปลี่ยนการเข้าสู่ระบบผ่านโซเชียลหรือกลุ่มผู้ใช้เป็นข้อมูลรับรอง AWS ชั่วคราว โดยจัดการการเรียก STS เบื้องหลัง วิธีนี้เป็นแนวทางที่แนะนำสำหรับแอปมือถือ แทนการเรียก AssumeRoleWithWebIdentity โดยตรง

หลีกเลี่ยงการฝังคีย์

จุดประสงค์ทั้งหมดของการเชื่อมโยงข้อมูลประจำตัวคือ หยุดการฝังคีย์ระยะยาว ไว้ในแอป กระบวนการต่อเนื่อง และอุปกรณ์

  • คีย์แบบคงที่ที่รั่วไหลเป็นสาเหตุสำคัญของการโจมตีข้อมูล
  • โทเค็นที่เชื่อมโยงข้อมูลประจำตัวมีอายุสั้นและผูกกับข้อมูลประจำตัวที่ผ่านการตรวจสอบแล้ว

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

การเลือกมาตรฐานที่เหมาะสม

เลือกมาตรฐานให้ตรงกับแหล่งที่มา:

  • SAML สำหรับ IdP ขององค์กรแบบดั้งเดิมและ AD
  • OIDC สำหรับงานประมวลผลสมัยใหม่และ CI/CD
  • ข้อมูลประจำตัวผ่านเว็บ / Cognito สำหรับผู้ใช้แอปสาธารณะ

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

การตรวจสอบการเข้าถึงที่เชื่อมโยงข้อมูลประจำตัว

เซสชันที่เชื่อมโยงข้อมูลประจำตัวจะปรากฏใน CloudTrail พร้อมข้อมูลประจำตัวของบทบาทที่รับมาและเหตุการณ์การเชื่อมโยงข้อมูลประจำตัว

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

ตรวจสอบอย่างรวดเร็ว

เลือกตัวเลือกการเชื่อมโยงข้อมูลประจำตัวที่ถูกต้อง

สรุปทบทวน

คุณได้เปรียบเทียบมาตรฐานการเชื่อมโยงข้อมูลประจำตัวแล้ว

  • SAML สำหรับ IdP ขององค์กร OIDC สำหรับงานประมวลผล และ ข้อมูลประจำตัวผ่านเว็บ/Cognito สำหรับผู้ใช้แอป
  • ทั้งหมดแลกเปลี่ยนข้อมูลยืนยันภายนอกที่ผ่านการตรวจสอบผ่าน STS เป็นข้อมูลรับรองชั่วคราวของบทบาท
  • การเชื่อมโยงข้อมูลประจำตัวทำให้ไม่จำเป็นต้องฝังคีย์ระยะยาว

คำถามที่พบบ่อย

บทเรียน “SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AWS Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AWS Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ”

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

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AWS Security Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน AWS Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน AWS Security Academy นี้ได้ไหม

ได้ บทเรียน AWS Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การลงชื่อเข้าใช้ครั้งเดียวด้วย IAM Identity Center
  2. SAML, OIDC และการรวมศูนย์อัตลักษณ์บนเว็บ
  3. โรลข้ามบัญชีและนโยบายทรัพยากร
  4. การตรวจสอบการแชร์ด้วย IAM Access Analyzer
← กลับไปที่ AWS Security Academy