รีเซ็ตรหัสผ่าน
ฟีเจอร์กู้คืนรหัสผ่านจะเปิดใช้งานโดยอัตโนมัติเมื่อคุณตั้งค่า ตัวเชื่อมต่ออีเมล (Email connector) หรือ ตัวเชื่อมต่อ SMS (SMS connector) ที่ถูกต้อง ผู้ใช้สามารถรีเซ็ตรหัสผ่านได้โดยกรอกอีเมลหรือหมายเลขโทรศัพท์ที่ลงทะเบียนไว้
ลืมรหัสผ่านเพื่อกู้คืนบัญชี
เมื่อเปิดใช้งานฟีเจอร์รีเซ็ตรหัสผ่านแล้ว จะมีปุ่มลิงก์ “ลืมรหัสผ่าน” แสดงอยู่ใต้ฟอร์มลงชื่อเข้าใช้ ผู้ใช้สามารถคลิกที่ลิงก์ “ลืมรหัสผ่าน” เพื่อเริ่มกระบวนการรีเซ็ตรหัสผ่าน
ไม่เห็นลิงก์ “ลืมรหัสผ่าน”? โปรดตรวจสอบว่าคุณได้ตั้งค่า Email หรือ SMS connector ที่ถูกต้องแล้ว
- เข้าสู่หน้าลงชื่อเข้าใช้: ผู้ใช้เข้าสู่หน้าลงชื่อเข้าใช้
- คลิกที่ลิงก์ลืมรหัสผ่าน: ผู้ใช้คลิกที่ลิงก์ “ลืมรหัสผ่าน”
- กรอกอีเมล / โทรศัพท์: หลังจากคลิกที่ลิงก์ “ลืมรหัสผ่าน” ผู้ใช้จะถูกนำไปยังหน้ากรอกอีเมลหรือหมายเลขโทรศัพท์ที่ลงทะเบียนไว้
- ส่งรหัสยืนยัน: Logto จะส่งรหัสยืนยันไปยังอีเมลหรือหมายเลขโทรศัพท์ที่ผู้ใช้ระบุ และนำไปยังหน้าตรวจสอบรหัส
- กรอกรหัสยืนยัน: ผู้ใช้กรอกรหัสยืนยันที่ได้รับทางอีเมลหรือโทรศัพท์ Logto จะตรวจสอบรหัสและตัวตนของผู้ใช้ที่เกี่ยวข้องกับอีเมลหรือหมายเลขโทรศัพท์นั้น
- กรอกรหัสผ่านใหม่: ผู้ใช้จะถูกขอให้กรอกรหัสผ่านใหม่เมื่อรหัสยืนยันได้รับการตรวจสอบสำเร็จ
- รีเซ็ตรหัสผ่านสำเร็จ: หากรหัสผ่านที่กรอกตรงตามนโยบายรหัสผ่าน ระบบจะอัปเดตรหัสผ่านใหม่สำเร็จ
- เปลี่ยนเส้นทางไปยังหน้าลงชื่อเข้าใช้: ผู้ใช้จะถูกเปลี่ยนเส้นทางไปยังหน้าลงชื่อเข้าใช้เพื่อเข้าสู่ระบบด้วยรหัสผ่านใหม่

อัปเดตรหัสผ่านหลังลงชื่อเข้าใช้
ผู้ใช้ที่ผ่านการยืนยันตัวตนแล้วสามารถเปลี่ยน (หรือกำหนด) รหัสผ่านของตนเองได้ผ่านหน้าตั้งค่าบัญชีในแอปของคุณ ดู การตั้งค่าบัญชี สำหรับวิธีสร้างฟีเจอร์นี้ด้วย Account API
ตรวจสอบว่าผู้ใช้มีรหัสผ่านหรือไม่
ข้อมูลผู้ใช้จะมีฟิลด์ boolean ชื่อ hasPassword
ระบุว่าผู้ใช้มีข้อมูลรหัสผ่านอยู่หรือไม่
คุณสามารถรับค่า hasPassword
ได้โดย:
- Management API: เช่น
GET /api/users/:id
(รวมอยู่ในอ็อบเจกต์ผู้ใช้) - Custom token claims: แทรก
hasPassword
ลงใน ID / access tokens (เพื่อให้ frontend ของคุณปรับ UI ได้โดยไม่ต้องเรียก API เพิ่ม)
จากนั้นเรียก endpoint ของ Account API เพื่อกำหนดหรืออัปเดตรหัสผ่าน (ดูรายละเอียดในคู่มือการตั้งค่าบัญชี) สำหรับผู้ใช้ที่ไม่เคยมีรหัสผ่านมาก่อน คุณไม่จำเป็น (และไม่ควรบังคับ) ให้กรอกรหัสผ่านเดิม
แม้ว่าวิธีสมัครของคุณจะกำหนดให้ “ตั้งรหัสผ่าน” สำหรับการลงทะเบียนด้วยอีเมล / โทรศัพท์ / ชื่อผู้ใช้ ผู้ใช้ที่สร้างผ่าน social sign-in เพียงอย่างเดียวจะข้ามขั้นตอนสร้างรหัสผ่านโดยอัตโนมัติเพื่อลดอุปสรรค ผู้ใช้กลุ่มนี้จะมี hasPassword = false
จนกว่าจะตั้งรหัสผ่านเองในภายหลัง หลีกเลี่ยงการบังคับให้ตั้งรหัสผ่านทันทีหลัง social sign-up เว้นแต่จำเป็นตามนโยบายความปลอดภัยของคุณ — การแจ้งเตือนแบบหน่วงเวลาและเหมาะสมกับบริบทมักได้ผลลัพธ์ดีกว่า
นโยบายรหัสผ่านแบบกำหนดเอง
ปรับแต่งความยาวรหัสผ่าน ข้อกำหนดตัวอักษร และข้อจำกัดคำ เพื่อให้เหมาะกับความต้องการด้านความปลอดภัยของธุรกิจคุณ พร้อมมอบประสบการณ์ผู้ใช้ที่ดี การตั้งค่าเหล่านี้สามารถกำหนดได้ในส่วน Security > Password policy ดูรายละเอียดเพิ่มเติมได้ที่ นโยบายรหัสผ่าน
คำถามที่พบบ่อย
จะลงชื่อออกผู้ใช้หลังรีเซ็ตรหัสผ่านสำเร็จได้อย่างไร?
สมัครรับเหตุการณ์ PostResetPassword
จาก webhook event เพื่อรับการแจ้งเตือนเมื่อผู้ใช้รีเซ็ตรหัสผ่านสำเร็จ จากนั้นคุณสามารถเรียก sign-out เพื่อยกเลิกเซสชันปัจจุบันของผู้ใช้และเปลี่ยนเส้นทางไปยังหน้าลงชื่อเข้าใช้
จะสร้าง flow รีเซ็ตรหัสผ่านบน UI ของฉันเองได้อย่างไร?
คุณสามารถสร้าง flow รีเซ็ตรหัสผ่านของคุณเองได้โดยใช้ Management API และ Account API ของ Logto ดูรายละเอียดเพิ่มเติมที่ การตั้งค่าบัญชี
จะส่งลิงก์รีเซ็ตรหัสผ่านไปยังอีเมลของผู้ใช้ได้อย่างไร?
คุณสามารถสร้าง endpoint สำหรับรีเซ็ตรหัสผ่านแบบ self-hosted และใช้ Logto SDK เพื่อเริ่มต้นคำขอลงชื่อเข้าใช้โดยตั้งค่า first_screen
เป็น reset-password
ซึ่งจะเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าตั้งรหัสผ่านใหม่โดยอัตโนมัติ