ตั้งค่า 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 verification: วิธีที่สะดวก ส่งรหัสยืนยันแบบใช้ครั้งเดียวผ่าน SMS ไปยังหมายเลขโทรศัพท์ที่ลงทะเบียน เหมาะสำหรับผู้ใช้ที่ต้องการยืนยันตัวตนผ่านมือถือโดยไม่ต้องติดตั้งแอปเพิ่มเติม
- Email verification: วิธีที่เข้าถึงได้ง่าย ส่งรหัสยืนยันแบบใช้ครั้งเดียวไปยังอีเมลที่ลงทะเบียน เหมาะสำหรับผู้ใช้ทุกแพลตฟอร์มและอุปกรณ์
- ปัจจัยสำรอง:
- Backup codes: ใช้เป็นตัวเลือกสำรองเมื่อผู้ใช้ไม่สามารถยืนยันตัวตนด้วยปัจจัยหลักข้างต้น การเปิดใช้งานนี้ช่วยลดอุปสรรคในการเข้าถึงของผู้ใช้
- ปัจจัยหลัก:
- เลือกนโยบาย Require MFA จากดรอปดาวน์ นโยบายนี้ควบคุมว่าผู้ใช้ต้องทำ MFA เมื่อใดระหว่างการลงชื่อเข้าใช้:
- Optional MFA: ให้ผู้ใช้ตัดสินใจเองว่าจะเปิดใช้งาน MFA เพื่อความปลอดภัยของบัญชีหรือไม่ ผู้ใช้สามารถข้ามการตั้งค่า MFA ระหว่างลงชื่อเข้าใช้ และตั้งค่าได้ภายหลังผ่านหน้าตั้งค่าบัญชีด้วยตนเอง เรียนรู้เพิ่มเติม เกี่ยวกับการสร้างหน้าตั้งค่าบัญชีผู้ใช้
- Adaptive MFA: ใช้ MFA เฉพาะเมื่อการลงชื่อเข้าใช้ดูผิดปกติ เพื่อให้การลงชื่อเข้าใช้ที่มีความเสี่ยงต่ำเป็นไปอย่างราบรื่น ในขณะที่การลงชื่อเข้าใช้ที่น่าสงสัยจะได้รับการยืนยันเพิ่มเติม Logto จะประเมินสัญญาณบริบทระดับสูง เช่น ระดับ inactivity ของผู้ใช้ ความสอดคล้องกับรูปแบบการเดินทางล่าสุด สถานะของเครือข่าย และตัวบ่งชี้เซสชันหรือสิ่งแวดล้อมอื่น ๆ โหมดนี้ขึ้นอยู่กับการตั้งค่า MFA ที่มีอยู่ (ต้องเปิดใช้งานอย่างน้อย 1 ปัจจัย) ใช้กับ flow การลงชื่อเข้าใช้ของผู้ใช้ปลายทาง และไม่พึ่งพาการตรวจลายนิ้วมือของอุปกรณ์หรือการติดตามตำแหน่งที่แม่นยำ
- Mandatory MFA: บังคับให้ผู้ใช้ทุกคนต้องทำ MFA ทุกครั้งที่ลงชื่อเข้าใช้ ผู้ใช้ที่ยังไม่ได้ตั้งค่า MFA ต้องตั้งค่าก่อนจึงจะดำเนินการต่อได้
- เมื่อเลือก Optional MFA หรือ Adaptive MFA ให้ตั้งค่านโยบายการแจ้งเตือนการตั้งค่า MFA:
- Do not ask users to set up MFA: จะไม่มีการแจ้งเตือนให้ผู้ใช้ตั้งค่า MFA ระหว่างลงชื่อเข้าใช้
- Ask users to set up MFA during registration: ผู้ใช้ใหม่จะถูกแจ้งให้ตั้งค่า MFA ระหว่างลงทะเบียน และผู้ใช้เดิมจะเห็นแจ้งเตือนนี้ในการลงชื่อเข้าใช้ครั้งถัดไป ภายใต้ Optional MFA ผู้ใช้สามารถข้ามขั้นตอนนี้และจะไม่เห็นอีก ภายใต้ Adaptive MFA เมื่อถูกแจ้งแล้ว ผู้ใช้ต้องตั้งค่า MFA ให้เสร็จก่อนจึงจะจบ flow การลงชื่อเข้าใช้ / ลงทะเบียนได้
- Ask users to set up MFA on their sign-in after registration: ผู้ใช้ใหม่จะถูกแจ้งให้ตั้งค่า MFA ในการลงชื่อเข้าใช้ครั้งที่สองหลังลงทะเบียน และผู้ใช้เดิมจะเห็นแจ้งเตือนนี้ในการลงชื่อเข้าใช้ครั้งถัดไป ภายใต้ Optional MFA ผู้ใช้สามารถข้ามขั้นตอนนี้และจะไม่เห็นอีก ภายใต้ Adaptive MFA เมื่อถูกแจ้งแล้ว ผู้ใช้ต้องตั้งค่า MFA ให้เสร็จก่อนจึงจะจบ flow การลงชื่อเข้าใช้ / ลงทะเบียนได้
เมื่อเลือก Optional MFA หรือ Adaptive MFA และ Logto ตัดสินใจแจ้งเตือนให้ผู้ใช้ลงทะเบียน ระบบจะแสดงหน้าคอนเฟิร์มเปิดใช้งาน MFA ชื่อ Turn on 2-step verification ก่อน ภายใต้ Optional MFA ผู้ใช้สามารถเลือก Enable 2-step verification เพื่อดำเนินการต่อ หรือข้ามแจ้งเตือนและจบ flow การลงชื่อเข้าใช้ / ลงทะเบียนโดยไม่เปิด MFA ได้ ภายใต้ Adaptive MFA เมื่อถูกแจ้งแล้ว ผู้ใช้ต้องดำเนินการผูก MFA ก่อนจึงจะจบ flow การลงชื่อเข้าใช้ / ลงทะเบียนได้
หากคุณต้องการแจ้งเตือนผู้ใช้อีกครั้งหลังจากที่พวกเขาข้ามการลงทะเบียน MFA ให้รีเซ็ตสถานะ skip ของพวกเขาเพื่อให้หน้าตั้งค่าปรากฏอีกครั้งในการลงชื่อเข้าใช้ครั้งถัดไป ผู้ดูแลระบบสามารถใช้ 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) และรองรับ องค์กร (Organizations) โดยส่วนใหญ่คุณไม่จำเป็นต้องบังคับ 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 ระหว่างการลงชื่อเข้าใช้หรือสมัครสมาชิก ผู้ใช้สามารถข้ามขั้นตอนนี้ได้เฉพาะเมื่อเลือก Optional MFA ใน Require MFA policy
- เข้าสู่หน้าลงชื่อเข้าใช้หรือสมัครสมาชิก: ผู้ใช้ไปยังหน้าลงชื่อเข้าใช้หรือสมัครสมาชิก
- ดำเนินการลงชื่อเข้าใช้หรือสมัครสมาชิกให้เสร็จสิ้น: ผู้ใช้ดำเนินการยืนยันตัวตนใน flow ลงชื่อเข้าใช้หรือสมัครสมาชิก
- หากเลือก Optional MFA หรือ Adaptive MFA และเปิดใช้งานนโยบายแจ้งเตือน Logto อาจแสดงหน้าชื่อ
Turn on 2-step verificationก่อนเริ่มผูก MFA factor ใด ๆ - ภายใต้ Optional MFA ผู้ใช้สามารถข้ามหน้านี้หรือคลิก
Enable 2-step verificationเพื่อดำเนินการต่อ ภายใต้ Adaptive MFA เมื่อถูกแจ้งแล้ว ผู้ใช้ต้องดำเนินการผูก MFA
- หากเลือก Optional MFA หรือ Adaptive MFA และเปิดใช้งานนโยบายแจ้งเตือน Logto อาจแสดงหน้าชื่อ
- ตั้งค่าปัจจัยหลักของ MFA: ผู้ใช้ถูกแจ้งให้ตั้งค่าปัจจัยหลักของ MFA (passkey, Authenticator app OTP, SMS code หรือ email code)
- หากเปิดใช้งานหลายปัจจัยหลัก ผู้ใช้สามารถเลือกตัวเลือกที่ต้องการได้
- หากปัจจัยหลักตรงกับ identifier ที่ใช้สมัคร (เช่น SMS หรือ email) จะถูกยืนยันล่วงหน้า ทำให้ผู้ใช้ข้ามขั้นตอนยืนยันและไปขั้นถัดไปได้ทันที (เช่น “เพิ่มการยืนยัน 2 ขั้นตอนอีกหนึ่งรายการ” หรือ “บันทึกรหัสสำรอง”)
- หากเลือก Optional MFA ใน Require MFA policy ผู้ใช้สามารถข้ามขั้นตอนนี้ได้โดยกดปุ่ม "ข้าม"
- ตั้งค่าปัจจัยสำรองของ MFA: หากเปิดใช้งาน Backup codes ผู้ใช้จะถูกแจ้งให้บันทึกรหัสสำรองหลังตั้งค่าปัจจัยหลักเสร็จ รหัสสำรองที่สร้างอัตโนมัติจะแสดงให้ผู้ใช้ดาวน์โหลดและเก็บไว้อย่างปลอดภัย ผู้ใช้ต้องยืนยันรหัสสำรองด้วยตนเองเพื่อจบกระบวนการตั้งค่า MFA
กระบวนการยืนยัน MFA
ผู้ใช้ที่ตั้งค่า MFA แล้วจะถูกแจ้งให้ยืนยันตัวตนด้วยปัจจัย MFA ที่ตั้งค่าไว้ระหว่างลงชื่อเข้าใช้ ปัจจัยที่ใช้ขึ้นอยู่กับการตั้งค่า MFA ใน Logto และการตั้งค่าของผู้ใช้
หากผู้ใช้ลงชื่อเข้าใช้ด้วย passkey sign-in Logto จะข้ามขั้นตอนยืนยัน MFA แยกต่างหาก เพราะ passkey ที่ใช้ลงชื่อเข้าใช้ถือเป็นปัจจัย MFA แบบ WebAuthn อยู่แล้ว
- หากผู้ใช้ตั้งค่าเพียงปัจจัยเดียว จะถูกยืนยันด้วยปัจจัยนั้นโดยตรง
- หากผู้ใช้ตั้งค่าหลายปัจจัยสำหรับ 2FA ระบบจะนำเสนอทางเลือกการยืนยันตามลำดับความสำคัญดังนี้:
- Passkey priority: หากผู้ใช้ตั้งค่า passkey ระบบจะนำเสนอเป็นวิธีเริ่มต้น
- Last-used preference: หากไม่มี passkey ระบบจะเลือกวิธีที่ผู้ใช้ใช้สำเร็จล่าสุด
- Selection list: หากไม่มีข้อใดข้างต้น หน้า 2-step verification จะแสดงวิธีที่ผูกไว้ทั้งหมดให้ผู้ใช้เลือก
- ผู้ใช้สามารถคลิก "ลองวิธีอื่นเพื่อยืนยัน" เพื่อสลับวิธีการยืนยันได้ตลอดเวลา
- หากปัจจัยหลักที่เปิดใช้งานทั้งหมดไม่พร้อมใช้งาน และเปิดใช้งานรหัสสำรอง ผู้ใช้สามารถใช้รหัสสำรองแบบใช้ครั้งเดียวเพื่อยืนยันตัวตนได้
การจัดการ MFA
นอกเหนือจากการตั้งค่าเริ่มต้นระหว่างลงชื่อเข้าใช้ / สมัครสมาชิก ผู้ใช้สามารถจัดการการตั้งค่า MFA ได้ผ่านศูนย์บัญชีแบบ self-service เพื่อความยืดหยุ่นในการผูกหรือยกเลิกผูกปัจจัย 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 หรือ email) จะเกิดสถานการณ์ต่อไปนี้ในการลงชื่อเข้าใช้ครั้งถัดไปของผู้ใช้:
สถานการณ์ที่ 1: ไม่มีปัจจัย MFA เหลืออยู่
- หากไม่มีปัจจัย MFA ใด ๆ (รวมถึงไม่มีรหัสสำรอง) และ นโยบาย MFA กำหนดให้ต้องใช้ MFA ผู้ใช้จะสามารถลงชื่อเข้าใช้ได้โดยไม่ต้องยืนยัน MFA และจะถูกแจ้งให้ตั้งค่า MFA ใหม่ทันที
สถานการณ์ที่ 2: ยังมีรหัสสำรองเหลืออยู่
- หากยังมีรหัสสำรอง ผู้ใช้ต้องยืนยันตัวตนด้วยรหัสสำรองก่อนระหว่างลงชื่อเข้าใช้
- หลังยืนยันรหัสสำรองสำเร็จ ผู้ใช้จะถูกแจ้งให้ตั้งค่าปัจจัย MFA หลักใหม่
- ผู้ใช้จะสามารถข้ามขั้นตอนนี้ได้หรือไม่ขึ้นอยู่กับนโยบาย MFA ที่คุณตั้งค่าไว้
- วิธีนี้ช่วยป้องกันไม่ให้ผู้ใช้ถูกล็อกบัญชีเมื่อไม่มีปัจจัยหลักเหลืออยู่