ข้ามไปยังเนื้อหาหลัก

นโยบายชื่อผู้ใช้

Logto บังคับใช้กฎพื้นฐานของชื่อผู้ใช้เสมอ: ชื่อผู้ใช้ต้องประกอบด้วยเฉพาะตัวอักษร ตัวเลข และขีดล่าง (_) เท่านั้น, ต้องไม่ขึ้นต้นด้วยตัวเลข และต้องมีความยาวไม่เกิน 128 ตัวอักษร นอกเหนือจากกฎพื้นฐานนี้ คุณสามารถกำหนดนโยบายชื่อผู้ใช้เพิ่มเติมเพื่อจำกัดตัวเลือกชื่อผู้ใช้ของผู้ใช้ปลายทาง เช่น การทำให้ชื่อผู้ใช้ไม่แยกแยะตัวพิมพ์เล็ก / ใหญ่, การกำหนดช่วงความยาวให้แคบลง, หรือจำกัดประเภทอักขระที่อนุญาต

Logto จะบังคับใช้นโยบายชื่อผู้ใช้แตกต่างกันไปตามวิธีที่ชื่อผู้ใช้ถูกสร้างหรืออัปเดต:

  • กระบวนการฝั่งผู้ใช้ปลายทาง เช่น ประสบการณ์การลงชื่อเข้าใช้สำเร็จรูป, Account API, และ Account Center จะบังคับใช้นโยบายชื่อผู้ใช้ปัจจุบันเสมอ ผู้ใช้จะเห็นข้อกำหนดของนโยบายในหน้าชื่อผู้ใช้และได้รับข้อผิดพลาดแบบอินไลน์เมื่อกรอกชื่อผู้ใช้ที่ละเมิดนโยบาย
  • การดำเนินการของผู้ดูแลระบบผ่าน Management API (เช่น POST /api/users) จะได้รับการยกเว้นจากนโยบายนี้และใช้เฉพาะกฎพื้นฐานเท่านั้น ช่วยให้คุณสามารถจัดเตรียมหรือย้ายข้อมูลผู้ใช้โดยไม่ต้องตรวจสอบนโยบายเมื่อจำเป็น

การอัปเดตนโยบายจะไม่เปลี่ยนแปลงหรือทำให้ชื่อผู้ใช้ที่มีอยู่เดิมใช้ไม่ได้: ผู้ใช้ยังคงลงชื่อเข้าใช้ด้วยชื่อผู้ใช้เดิมของตนได้ แม้ว่าชื่อผู้ใช้นั้นจะไม่ผ่านเกณฑ์สำหรับการลงทะเบียนใหม่แล้วก็ตาม

ตั้งค่านโยบายชื่อผู้ใช้

ในการกำหนดนโยบายชื่อผู้ใช้ ให้ทำตามขั้นตอนดังนี้:

  1. ไปที่หน้า Console > Sign-in & account > Sign-up and sign-in
  2. ที่ส่วน ตัวเลือกขั้นสูง (Advanced options) คลิก จัดการ (Manage) ที่ฟิลด์ นโยบายชื่อผู้ใช้ (Username policy)

การตั้งค่าต่อไปนี้สามารถกำหนดได้:

  1. แยกแยะตัวพิมพ์เล็ก / ใหญ่ (Case sensitive): กำหนดว่าชื่อผู้ใช้ที่แตกต่างกันเฉพาะตัวพิมพ์ (เช่น Alice กับ alice) จะถือว่าเป็นชื่อผู้ใช้คนละชื่อหรือไม่ เปิดใช้งานโดยค่าเริ่มต้น หากปิดใช้งาน ผู้ใช้สามารถลงชื่อเข้าใช้ด้วยตัวพิมพ์ใดก็ได้ของชื่อผู้ใช้ และชื่อผู้ใช้ใหม่ที่ซ้ำกับชื่อที่มีอยู่โดยไม่แยกแยะตัวพิมพ์จะถูกปฏิเสธ
  2. ความยาว (Length): กำหนดจำนวนตัวอักษรขั้นต่ำและสูงสุดที่อนุญาตสำหรับชื่อผู้ใช้ โดยอยู่ในช่วงพื้นฐาน 1 ถึง 128 ตัวอักษร
  3. อักขระที่อนุญาต (Allowed characters): เลือกประเภทอักขระที่ผู้ใช้สามารถใช้ได้: ตัวอักษรพิมพ์ใหญ่ (A-Z), ตัวอักษรพิมพ์เล็ก (a-z), ตัวเลข (0-9), และขีดล่าง (_) ต้องเปิดใช้งานอย่างน้อยหนึ่งในตัวอักษรพิมพ์ใหญ่ ตัวอักษรพิมพ์เล็ก หรือขีดล่าง เนื่องจากกฎพื้นฐานไม่อนุญาตให้ชื่อผู้ใช้ขึ้นต้นด้วยตัวเลข

สลับไปใช้ชื่อผู้ใช้ไม่แยกแยะตัวพิมพ์เล็ก / ใหญ่

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

เมื่อคุณปิด แยกแยะตัวพิมพ์เล็ก / ใหญ่ (Case sensitive) ใน Console, Logto จะตรวจสอบความขัดแย้งล่วงหน้าและแสดงรายชื่อชื่อผู้ใช้ที่ซ้ำกันเพื่อให้คุณแก้ไข (เช่น เปลี่ยนชื่อหรือยกเลิกบัญชีหนึ่ง) ก่อนบันทึก คุณยังสามารถตรวจสอบความขัดแย้งโดยตรงผ่าน GET /api/sign-in-exp/username-policy/case-sensitivity-conflicts

ข้อมูลผู้ใช้: ชื่อผู้ใช้

ลงทะเบียนด้วยอีเมล / โทรศัพท์ / ชื่อผู้ใช้

นโยบายรหัสผ่าน