ตั้งค่า MFA
ตั้งค่าการยืนยันตัวตนหลายปัจจัย (MFA) ใน Logto
Logto มีตัวเลือกการตั้งค่า MFA ที่ยืดหยุ่นเพื่อตอบโจทย์ความต้องการด้านความปลอดภัยที่แตกต่างกัน คุณสามารถตั้งค่า MFA ในระดับโกลบอลสำหรับผู้ใช้ทุกคน หรือเปิดใช้งานเป็นรายองค์กรสำหรับแอปพลิเคชันแบบหลายผู้เช่า (multi-tenant)
การตั้งค่า MFA ระดับโกลบอล
ทำตามขั้นตอนเหล่านี้เพื่อเปิดใช้งาน MFA ในขั้นตอนการลงชื่อเข้าใช้ของผู้ใช้ Logto:
- ไปที่: Console > Multi-factor auth
- เปิดใช้งานปัจจัยการยืนยันตัวตนที่รองรับสำหรับผู้ใช้ของคุณ
- ปัจจัยหลัก:
- Passkeys (WebAuthn): ตัวเลือกความปลอดภัยสูง เหมาะสำหรับผลิตภัณฑ์เว็บที่รองรับไบโอเมตริกซ์ของอุปกรณ์หรือคีย์ความปลอดภัย ฯลฯ เพื่อการปกป้องที่แข็งแกร่ง
- Authenticator App OTP: วิธีที่พบได้บ่อยและได้รับการยอมรับมากที่สุด ใช้รหัสผ่านแบบใช้ครั้งเดียวตามเวลา (TOTP) ที่สร้างโดยแอปยืนยันตัวตน เช่น Google Authenticator หรือ Authy
- การยืนยัน SMS: วิธีที่สะดวก ส่งรหัสยืนยันแบบใช้ครั้งเดียวผ่าน SMS ไปยังหมายเลขโทรศัพท์ที่ลงทะเบียน เหมาะสำหรับผู้ใช้ที่ต้องการยืนยันตัวตนผ่านมือถือโดยไม่ต้องใช้แอปเพิ่มเติม
- การยืนยันอีเมล: วิธีที่เข้าถึงได้ง่าย ส่งรหัสยืนยันแบบใช้ครั้งเดียวไปยังอีเมลที่ลงทะเบียน เหมาะกับผู้ใช้ทุกแพลตฟอร์มและอุปกรณ์
- ปัจจัยสำรอง:
- รหัสสำรอง: ใช้เป็นตัวเลือกสำรองเมื่อผู้ใช้ไม่สามารถยืนยันตัวตนด้วยปัจจัยหลักข้างต้น การเปิดใช้งานนี้ช่วยลดอุปสรรคในการเข้าถึงของผู้ใช้
- ปัจจัยหลัก:
- เลือกว่าต้องการเปิดใช้งาน Require MFA หรือไม่:
- Enable: ผู้ใช้จะถูกบังคับให้ตั้งค่า MFA ระหว่างขั้นตอนการลงชื่อเข้าใช้และไม่สามารถข้ามได้ หากผู้ใช้ไม่ตั้งค่า MFA หรือทำการลบการตั้งค่า MFA จะไม่สามารถเข้าบัญชีได้จนกว่าจะตั้งค่า MFA ใหม่
- Disable: ผู้ใช้สามารถข้ามขั้นตอนการตั้งค่า MFA ระหว่างการลงทะเบียนได้ และสามารถตั้งค่า MFA ภายหลังผ่านหน้าตั้งค่าบัญชีด้วยตนเอง เรียนรู้เพิ่มเติม เกี่ยวกับการสร้างหน้าตั้งค่าบัญชีผู้ใช้ และเลือกนโยบายสำหรับการแจ้งเตือนการตั้งค่า MFA ต่อไปนี้:
- Do not ask users to set up MFA: จะไม่มีการแจ้งเตือนให้ผู้ใช้ตั้งค่า MFA ระหว่างการลงชื่อเข้าใช้
- Ask users to set up MFA during registration: ผู้ใช้ใหม่จะถูกแจ้งให้ตั้งค่า MFA ระหว่างการลงทะเบียน และผู้ใช้เดิมจะเห็นแจ้งเตือนนี้ในการลงชื่อเข้าใช้ครั้งถัดไป ผู้ใช้สามารถข้ามขั้นตอนนี้ได้ และจะไม่ถูกแจ้งเตือนอีก
- Ask users to set up MFA on their sign-in after registration: ผู้ใช้ใหม่จะถูกแจ้งให้ตั้งค่า MFA ในการลงชื่อเข้าใช้ครั้งที่สองหลังจากลงทะเบียน และผู้ใช้เดิมจะเห็นแจ้งเตือนนี้ในการลงชื่อเข้าใช้ครั้งถัดไป ผู้ใช้สามารถข้ามขั้นตอนนี้ได้ และจะไม่ถูกแจ้งเตือนอีก
หากคุณต้องการแจ้งเตือนผู้ใช้อีกครั้งหลังจากที่ข้ามการลงทะเบียน MFA ให้รีเซ็ตสถานะการข้ามของพวกเขาเพื่อให้หน้าตั้งค่าปรากฏในการลงชื่อเข้าใช้ครั้งถัดไป ผู้ดูแลระบบสามารถใช้ Management API (PATCH /api/users/{userId}/logto-configs) และนักพัฒนาที่สร้าง flow แบบ self-service สามารถเรียก Account API (PATCH /api/my-account/logto-configs) Management API reference · Account API reference
การตั้งค่า MFA ระดับองค์กร
สำหรับผลิตภัณฑ์ที่มีสถาปัตยกรรมแบบหลายผู้เช่า (multi-tenant) และรองรับ องค์กร โดยส่วนใหญ่คุณไม่จำเป็นต้องบังคับใช้ MFA กับผู้ใช้ทุกคน แต่สามารถเปิดใช้งาน MFA เป็นรายองค์กร เพื่อปรับแต่งตามความต้องการของลูกค้าแต่ละรายได้ ดูวิธีเริ่มต้นที่ บังคับใช้ MFA สำหรับสมาชิกองค์กร
ในส่วน Multi-factor authentication ให้ตั้งค่า MFA setup prompt for users after organization enables MFA เป็น Ask users to set up MFA on next sign-in (no skipping) สมาชิกขององค์กรที่บังคับใช้ MFA จะถูกแจ้งให้ตั้งค่า MFA ในการลงชื่อเข้าใช้ครั้งถัดไป และไม่สามารถข้ามได้
กระบวนการใช้งาน MFA ของผู้ใช้
กระบวนการตั้งค่า MFA
เมื่อเปิดใช้งาน MFA แล้ว ผู้ใช้จะถูกแจ้งให้ตั้งค่า MFA ระหว่างขั้นตอนการลงชื่อเข้าใช้และลงทะเบียน ผู้ใช้สามารถเลือกข้ามขั้นตอนนี้ได้ เฉพาะเมื่อ นโยบาย “Require MFA” ถูกปิดใช้งาน
- เข้าสู่หน้าลงชื่อเข้าใช้หรือสมัครสมาชิก: ผู้ใช้ไปที่หน้าลงชื่อเข้าใช้หรือสมัครสมาชิก
- ดำเนินการลงชื่อเข้าใช้หรือสมัครสมาชิกให้เสร็จสิ้น: ผู้ใช้ดำเนินการยืนยันตัวตนใน flow การลงชื่อเข้าใช้หรือสมัครสมาชิก
- ตั้งค่าปัจจัยหลักของ MFA: ผู้ใช้จะถูกแจ้งให้ตั้งค่าปัจจัยหลักของ MFA (เช่น passkey, Authenticator app OTP, รหัส SMS หรือรหัสอีเมล)
- หากเปิดใช้งานปัจจัยหลักหลายอย่าง ผู้ใช้สามารถเลือกตัวเลือกที่ต้องการได้
- หากปัจจัยหลักตรงกับตัวระบุที่ใช้สมัคร (เช่น SMS หรืออีเมล) จะได้รับการยืนยันล่วงหน้า ผู้ใช้สามารถข้ามขั้นตอนการยืนยันและไปยังขั้นตอนถัดไปได้ทันที (เช่น “เพิ่มการยืนยันสองขั้นตอนอื่น” หรือ “บันทึกรหัสสำรอง”)
- หากนโยบาย “Require MFA” ถูกปิดใช้งาน ผู้ใช้สามารถข้ามขั้นตอนนี้ได้โดยกดปุ่ม "ข้าม"
- ตั้งค่าปัจจัยสำรองของ MFA: หากเปิดใช้งาน รหัสสำรอง ผู้ใช้จะถูกแจ้งให้บันทึกรหัสสำรองหลังจากตั้งค่าปัจจัยหลักสำเร็จ ระบบจะแสดงรหัสสำรองที่สร้างอัตโนมัติให้ผู้ใช้ดาวน์โหลดและเก็บไว้อย่างปลอดภัย ผู้ใช้ต้องยืนยันรหัสสำรองด้วยตนเองเพื่อให้การตั้งค่า MFA เสร็จสมบูรณ์
กระบวนการยืนยัน MFA
ผู้ใช้ที่ตั้งค่า MFA แล้วจะถูกแจ้งให้ยืนยันตัวตนด้วยปัจจัย MFA ที่ตั้งค่าไว้ระหว่างการลงชื่อเข้าใช้ ปัจจัยที่ใช้ยืนยันขึ้นอยู่กับการตั้งค่า MFA ใน Logto และการตั้งค่าของผู้ใช้
- หากผู้ใช้ตั้งค่าเพียงปัจจัยเดียว จะต้องยืนยันปัจจัยนั้นโดยตรง
- หากผู้ใช้ตั้งค่าหลายปัจจัยสำหรับ 2FA ระบบจะนำเสนอทางเลือกการยืนยันตามลำดับความสำคัญดังนี้:
- Passkey priority: หากผู้ใช้ตั้งค่า passkey จะถูกนำเสนอเป็นวิธีเริ่มต้น
- Last-used preference: หากไม่มี passkey ระบบจะเลือกวิธีที่ผู้ใช้ใช้สำเร็จล่าสุด
- Selection list: หากไม่มีลำดับความสำคัญข้างต้น หน้า 2-step verification จะแสดงวิธีการยืนยันทั้งหมดที่ผู้ใช้ผูกไว้ให้เลือก
- ผู้ใช้สามารถคลิก "ลองวิธีอื่นเพื่อยืนยัน" เพื่อสลับวิธีการยืนยันได้ตลอดเวลา
- หากไม่มีปัจจัยหลักที่เปิดใช้งานใด ๆ ให้ผู้ใช้ และเปิดใช้งานรหัสสำรอง ผู้ใช้สามารถใช้รหัสสำรองแบบใช้ครั้งเดียวเพื่อยืนยันตัวตนได้
การจัดการ MFA
นอกเหนือจากการตั้งค่าเริ่มต้นระหว่างการลงชื่อเข้าใช้ / สมัครสมาชิก ผู้ใช้สามารถจัดการการตั้งค่า MFA ได้ด้วยตนเองผ่านศูนย์บัญชี (account center) เพื่อความยืดหยุ่นในการผูกหรือยกเลิกผูกปัจจัย MFA ตามต้องการ
การสร้างศูนย์บัญชี
คุณสามารถสร้างศูนย์บัญชีที่ครบถ้วนโดยใช้ Account API ของ Logto ซึ่งช่วยให้ผู้ใช้สามารถ:
- ผูกปัจจัย MFA ใหม่: เพิ่มแอปยืนยันตัวตน, passkey หรือสร้างรหัสสำรองใหม่
- ยกเลิกผูกปัจจัย MFA เดิม: ลบวิธี MFA ที่ไม่ต้องการใช้งาน
- ดูสถานะ MFA ปัจจุบัน: ตรวจสอบว่ามีการตั้งค่าปัจจัย MFA ใดบ้าง
การแจ้งเตือนการตั้งค่า MFA หลังเข้าสู่ระบบ
สำหรับแอปที่ไม่บังคับใช้ MFA ระหว่างการลงทะเบียนครั้งแรก คุณสามารถสร้างการแจ้งเตือนอัจฉริยะเพื่อกระตุ้นให้ผู้ใช้ตั้งค่า MFA ได้ เช่น
- Conditional prompts: แนะนำการตั้งค่า MFA ตามพฤติกรรมหรือมูลค่าบัญชีของผู้ใช้
- Security dashboards: แสดงคะแนนความปลอดภัยที่เพิ่มขึ้นเมื่อเปิดใช้งาน MFA
- Gradual onboarding: นำเสนอการตั้งค่า MFA เป็นส่วนหนึ่งของ flow การเพิ่มความปลอดภัยแบบค่อยเป็นค่อยไป
เรียนรู้เพิ่มเติมเกี่ยวกับการนำรูปแบบเหล่านี้ไปใช้กับ Account API
จัดการ MFA ของผู้ใช้ใน Console
ใน Console > User management ผู้ดูแลระบบสามารถจัดการการตั้งค่า MFA ของผู้ใช้ได้อย่างมีประสิทธิภาพ:
- ดูสถานะ MFA ของผู้ใช้: ตรวจสอบว่าผู้ใช้แต่ละรายเปิดใช้งานปัจจัย MFA ใดบ้าง
- ลบ MFA ของผู้ใช้: ลบปัจจัย MFA ทั้งหมดของผู้ใช้ ทำให้ต้องตั้งค่า MFA ใหม่
คำถามที่พบบ่อย
จะเกิดอะไรขึ้นเมื่อผู้ดูแลระบบลบปัจจัย MFA เดิมของผู้ใช้?
เมื่อผู้ดูแลระบบลบปัจจัย MFA หลักทั้งหมดของผู้ใช้ (passkey, authenticator app OTP, SMS หรืออีเมล) จะเกิดสถานการณ์ต่อไปนี้ในการลงชื่อเข้าใช้ครั้งถัดไปของผู้ใช้:
สถานการณ์ที่ 1: ไม่มีปัจจัย MFA เหลืออยู่
- หากไม่มีปัจจัย MFA ใด ๆ (รวมถึงไม่มีรหัสสำรอง) และ นโยบาย MFA กำหนดให้ต้องใช้ MFA ผู้ใช้จะสามารถลงชื่อเข้าใช้ได้โดยไม่ต้องยืนยัน MFA และจะถูกแจ้งให้ตั้งค่า MFA ใหม่ทันที
สถานการณ์ที่ 2: ยังมีรหัสสำรองเหลืออยู่
- หากยังมีรหัสสำรอง ผู้ใช้ต้องยืนยันตัวตนด้วยรหัสสำรองก่อนในขั้นตอนลงชื่อเข้าใช้
- หลังจากยืนยันรหัสสำรองสำเร็จ ผู้ใช้จะถูกแจ้งให้ตั้งค่าปัจจัย MFA หลักใหม่
- ผู้ใช้จะสามารถข้ามขั้นตอนนี้ได้หรือไม่ขึ้นอยู่กับนโยบาย MFA ที่คุณตั้งค่าไว้
- วิธีนี้ช่วยป้องกันไม่ให้ผู้ใช้ถูกล็อกบัญชีเมื่อไม่มีปัจจัยหลักเหลืออยู่