ข้อผิดพลาด AADSTS50105 ใน Microsoft Entra ID เป็น ความล้มเหลวในการอนุญาต (authorization failure) ที่เกิดขึ้นเมื่อแขกในการร่วมมือ B2B พยายามเข้าถึง Enterprise Application ที่ต้องการการมอบหมาย (assignment) ให้ชัดเจน แต่ขาด บทบาท (role) ที่จำเป็น หรือการเป็นสมาชิกกลุ่ม
ในกรณีส่วนใหญ่ ข้อผิดพลาดปรากฏทันทีหลังการยืนยันตัวตน SSO สำเร็จ ซึ่งบ่งชี้ว่า credentials ของผู้ใช้ถูกต้อง แต่พวกเขาไม่มี สิทธิ์ที่จำเป็น ปัญหานี้เกี่ยวข้องกับการตั้งค่า “Assignment required” ซึ่งบังคับใช้หลักการ least privilege และบล็อกผู้ที่ไม่มีการมอบหมายชัดเจน
แม้รหัสข้อผิดพลาด 50105 จะเกี่ยวข้องหลักกับ การขาดการมอบหมาย (missing assignment) ปัจจัยอื่นๆ ก็อาจกระตุ้นได้ ตัวอย่างทั่วไปรวมถึง:
- ช่องว่างการจัดเตรียม (Provisioning gaps) – อัตโนมัติไม่สมบูรณ์หรือขั้นตอน onboarding ที่มองข้าม
- ข้อขัดแย้งนโยบาย (Policy conflicts) – กฎ Conditional Access หรือ enterprise apps ที่กำหนดค่าผิด
- ปัญหา Token (Token issues) – โทเคนที่ผิดรูปหรือหมดอายุ ป้องกันการอนุญาตที่ถูกต้อง
- การจำกัดบัญชี (Account restrictions) – การล็อคชั่วคราวหลัง พยายามลงชื่อเข้าใช้ซ้ำๆ
- การบล็อกที่เกี่ยวข้องเครือข่าย (Network-related blocks) – ปฏิเสธการเข้าถึงจาก IP ที่ถูกติดธงกิจกรรมน่าสงสัย
วิธีโดยตรงที่สุดในการแก้ไขข้อผิดพลาดนี้คือการให้สิทธิ์เข้าถึง Enterprise Application ใน Microsoft Entra ID แก่ Guest User อย่างชัดเจน การทำเช่นนี้รับประกันว่าพวกเขาได้รับ สิทธิ์ที่จำเป็น หรือ บทบาท เนื่องจากการตั้งค่า “Assignment required” บังคับควบคุมการเข้าถึงอย่างเคร่งครัด ผู้ใช้ที่ไม่มีการมอบหมายชัดเจนจะถูก บล็อก อัตโนมัติ การเพิ่มการมอบหมายจะทำให้ข้อกำหนดการอนุญาตได้รับการปฏิบัติตาม อนุญาตให้ guest user ลงชื่อเข้าใช้ได้โดยไม่มีข้อจำกัดเพิ่มเติม
- เปิดเว็บเบราว์เซอร์
- ไปที่ Microsoft Entra admin center
- ลงชื่อเข้าใช้เป็น Cloud Application Administrator หรือ Global Administrator
- ไปที่ Identity>Applications>Enterprise applications
- ค้นหาและเลือกแอปพลิเคชันเป้าหมาย
- ในแผงแอปพลิเคชัน ภายใต้ส่วน Manage คลิก Users and groups
- คลิกปุ่ม “+ Add user/group”
- ในแผง Add Assignment เลือก None Selected ภายใต้ Users and groups
- ค้นหาและเลือก guest user ที่ต้องการเข้าถึง (เช่น user@abc.com)
- ภายใต้ Select a role เลือก app role ที่เหมาะสม (เช่น Standard user) หากแอปไม่มีบทบาท ขั้นตอนนี้ข้ามได้
- คลิก Assign เพื่อให้สิทธิ์เข้าถึง
เพื่อลดความเสี่ยงของข้อผิดพลาดนี้ซ้ำ องค์กรควรนำมาตรการป้องกันหลายอย่างมาใช้:
- มอบหมาย guest users ให้กับกลุ่มที่เหมาะสมทันทีเมื่อเชิญ
- ใช้ security groups และ group-based licensing เพื่อทำให้การควบคุมการเข้าถึงแบบไดนามิกง่ายขึ้น
- รัน Microsoft Entra ID Access Reviews เป็นประจำ เพื่อลบสิทธิ์ที่ล้าสมัยหรือไม่จำเป็น
- บังคับ MFA สำหรับบัญชี guest ทั้งหมด และกำหนดค่า cross-tenant MFA trust หากจำเป็น
- ลดปัญหาเบราว์เซอร์โดยการล้างแคชหรือใช้ incognito session เมื่อลงชื่อเข้าใช้
ABOUT THE AUTHOR
Hamza Mohammad Anwar
Hamza Mohammad Anwar เป็นนักพัฒนาเว็บ JavaScript ระดับกลาง ที่เน้นพัฒนาแอปพลิเคชันประสิทธิภาพสูงด้วยเทคโนโลยี MERN ชุดทักษะรวมถึงความเชี่ยวชาญใน ReactJS, MongoDB, Express NodeJS และเทคโนโลยีที่เกี่ยวข้อง Hamza ยังเป็นผู้เชี่ยวชาญ IT ที่ได้รับการรับรองจาก Google ซึ่งเน้นความสามารถด้านสนับสนุน IT ในฐานะนักแก้ปัญหาที่กระตือรือร้น เขาสร้างข้อผิดพลาดซ้ำบนคอมพิวเตอร์ของตัวเองเพื่อ troubleshoot และหาวิธีแก้ไขปัญหาทางเทคนิคต่างๆ