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

นโยบายความน่าเชื่อถือและผู้ที่ใช้ AssumeRole ได้

กำหนดว่าหลักการใดได้รับอนุญาตให้รับบทบาทเป็นโรล

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

นโยบายผู้เฝ้าประตู

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

ประเภทของผู้มีสิทธิ์

องค์ประกอบ Principal ของนโยบายความไว้วางใจสามารถอ้างอิงถึง:

  • AWS — บัญชี ผู้ใช้ หรือ ARN ของบทบาท (Amazon Resource Name)
  • Service — บริการ AWS เช่น lambda.amazonaws.com
  • Federated — ผู้ให้บริการ SAML หรือผู้ให้บริการข้อมูลประจำตัวผ่านเว็บ

การเลือกประเภทผู้มีสิทธิ์ให้ถูกต้องและระบุให้เฉพาะเจาะจงเป็นสิ่งสำคัญ เพื่อหลีกเลี่ยงการมอบความไว้วางใจมากกว่าที่ตั้งใจ

การจับมือสองทาง

การสวมบทบาทข้ามบัญชีต้องได้รับความเห็นชอบจาก ทั้งสองฝ่าย นโยบายความไว้วางใจของบทบาทในบัญชีเป้าหมายต้องอนุญาตผู้มีสิทธิ์ที่เรียกใช้ และผู้มีสิทธิ์นั้นต้องมีนโยบายข้อมูลประจำตัวที่อนุญาตให้ใช้ sts:AssumeRole กับ ARN ของบทบาท หากขาดส่วนใดส่วนหนึ่ง คำขอจะถูกปฏิเสธ การจับมือสองทางนี้เป็นกับดักคลาสสิกในข้อสอบ

ตัวอย่างนโยบายความไว้วางใจ

นโยบายความไว้วางใจนี้อนุญาตให้บทบาทที่ระบุในบัญชี 111122223333 สวมบทบาทได้ การระบุ ARN ที่แน่นอนแทนการระบุทั้งบัญชีมีขอบเขตแคบกว่าและปลอดภัยกว่า

{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::111122223333:role/AppRole"
  },
  "Action": "sts:AssumeRole"
}

ผู้ใช้รากของบัญชีกับผู้ใช้ที่ระบุเฉพาะ

การระบุผู้มีสิทธิ์เป็น arn:aws:iam::ACCOUNT:root หมายถึงการไว้วางใจ ทั้งบัญชี กล่าวคือผู้มีสิทธิ์รายใดก็ตามในบัญชีนั้นที่มีสิทธิ์ sts:AssumeRole ก็สามารถสวมบทบาทได้ วิธีนี้มีขอบเขตกว้าง หากเป็นไปได้ ให้ระบุ ARN ของผู้ใช้หรือบทบาทที่แน่นอน เพื่อปฏิบัติตามหลักสิทธิ์เท่าที่จำเป็นและลดขอบเขตของความไว้วางใจ

เงื่อนไขในความไว้วางใจ

นโยบายความไว้วางใจรองรับบล็อก Condition เพื่อจำกัดให้เข้มงวดยิ่งขึ้นว่าใครสามารถสวมบทบาทได้และสวมบทบาทอย่างไร คีย์ที่ใช้บ่อย ได้แก่ sts:ExternalId (เพื่อป้องกันปัญหาตัวแทนที่สับสน), aws:MultiFactorAuthPresent (กำหนดให้ใช้ MFA) และ aws:SourceIp เงื่อนไขช่วยให้อนุญาตการสวมบทบาทได้เฉพาะในสถานการณ์ที่กำหนดและตรวจสอบได้

กำหนดให้ใช้ MFA ก่อนสวมบทบาท

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

"Condition": {
  "Bool": { "aws:MultiFactorAuthPresent": "true" }
}

ความไว้วางใจที่เชื่อมโยงกับบริการ

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

ความไว้วางใจภายในกับภายนอก

โดยทั่วไป การไว้วางใจผู้มีสิทธิ์ภายใน (บัญชีเดียวกัน) มีความเสี่ยงต่ำกว่าการไว้วางใจ บัญชีภายนอก หรือผู้ให้บริการ SaaS ภายนอก สำหรับความไว้วางใจภายนอก ให้ใช้ผู้มีสิทธิ์ที่ระบุเฉพาะเจาะจงร่วมกับเงื่อนไข เช่น ExternalId เสมอ โปรดมองทุกคำสั่งความไว้วางใจภายนอกเป็นจุดทางเข้าที่ผู้โจมตีต้องการใช้ประโยชน์

การตรวจสอบนโยบายความไว้วางใจ

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

การออกแบบความไว้วางใจอย่างปลอดภัย

การออกแบบความไว้วางใจอย่างปลอดภัยควรระบุผู้มีสิทธิ์ที่เฉพาะเจาะจงที่สุด เพิ่มเงื่อนไข เช่น ExternalId และ MFA เมื่อเหมาะสม เลือกใช้บทบาทแทนความไว้วางใจระดับรากของบัญชี และตรวจสอบด้วย Access Analyzer โปรดจำไว้ว่านโยบายความไว้วางใจตอบคำถามว่า ใคร ส่วนนโยบายสิทธิ์ตอบคำถามว่า อะไร ทั้งสองส่วนต้องสอดคล้องกันเพื่อให้การเข้าถึงทำงานได้และยังคงเป็นไปตามหลักสิทธิ์เท่าที่จำเป็น

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความรู้ของคุณเกี่ยวกับนโยบายความไว้วางใจ

สรุปทบทวน

นโยบายความไว้วางใจกำหนดว่า ผู้มีสิทธิ์รายใดสามารถสวมบทบาทได้ และทำหน้าที่เป็นผู้เฝ้าประตูโดยไม่ขึ้นกับนโยบายสิทธิ์ การสวมบทบาทข้ามบัญชีต้องมี การจับมือสองทาง ได้แก่ นโยบายความไว้วางใจและสิทธิ์ sts:AssumeRole ของผู้เรียกใช้ ควรเลือกใช้ ARN ของผู้มีสิทธิ์ที่ระบุเฉพาะเจาะจงแทนรากของบัญชี เพิ่ม เงื่อนไข เช่น ExternalId และ MFA และตรวจสอบด้วย IAM Access Analyzer

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

บทเรียน “นโยบายความน่าเชื่อถือและผู้ที่ใช้ AssumeRole ได้” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “นโยบายความน่าเชื่อถือและผู้ที่ใช้ AssumeRole ได้”

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

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

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

บทเรียน “นโยบายความน่าเชื่อถือและผู้ที่ใช้ AssumeRole ได้” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การเปรียบเทียบผู้ใช้และกลุ่ม IAM
  2. IAM Role คืออะไรอย่างแท้จริง
  3. นโยบายความน่าเชื่อถือและผู้ที่ใช้ AssumeRole ได้
  4. โปรไฟล์อินสแตนซ์สำหรับเวิร์กโหลด EC2
← กลับไปที่ AWS Security Academy