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

เก็บข้อมูลโปรไฟล์ผู้ใช้

Cloud availabilityOSS availability

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

  • ระหว่างการลงทะเบียนผู้ใช้ใหม่: ใช้ฟีเจอร์ เก็บข้อมูลโปรไฟล์ผู้ใช้ เพื่อเพิ่มขั้นตอน "บอกเราเกี่ยวกับตัวคุณ" ที่พร้อมใช้งานทันทีสำหรับเก็บข้อมูลโปรไฟล์เพิ่มเติมระหว่างการสมัครสมาชิก ผู้ใช้ใหม่ต้องกรอกข้อมูลที่จำเป็นทั้งหมดก่อนจึงจะถือว่าการลงทะเบียนเสร็จสมบูรณ์ เอกสารนี้เน้นวิธีนี้เป็นหลัก

  • หลังการลงทะเบียนผู้ใช้: ใช้ Account API เพื่อสร้างประสบการณ์บริการตนเองระหว่างขั้นตอน onboarding, ศูนย์บัญชี หรือระหว่างการใช้งานผลิตภัณฑ์ เพื่ออัปเดตข้อมูลโปรไฟล์ผู้ใช้

ประโยชน์สำคัญ

ฟีเจอร์ เก็บข้อมูลโปรไฟล์ผู้ใช้ ช่วยให้คุณสามารถรวบรวมข้อมูลเพิ่มเติมของผู้ใช้ระหว่างประสบการณ์การลงทะเบียนของผู้ใช้ปลายทาง เราแนะนำให้เก็บเฉพาะข้อมูลที่จำเป็นต่อผลิตภัณฑ์ของคุณเท่านั้น เพื่อหลีกเลี่ยงขั้นตอนการลงทะเบียนที่ยาวเกินไปซึ่งอาจส่งผลต่ออัตราการสมัครของผู้ใช้

ฟีเจอร์นี้ช่วยให้คุณ:

  • เก็บข้อมูลผู้ใช้อย่างครบถ้วน: เก็บ ข้อมูลผู้ใช้ ใด ๆ เพื่อวัตถุประสงค์ทางธุรกิจหรือข้อกำหนดด้านกฎหมาย รวมถึง คุณสมบัติมาตรฐานของผู้ใช้ OIDC และ ข้อมูลที่กำหนดเอง

  • ปรับแต่งฟิลด์ได้อย่างยืดหยุ่น: เลือกจาก ประเภทฟิลด์ ที่หลากหลาย เช่น ข้อความ ตัวเลข วันที่ เช็กบ็อกซ์ ดรอปดาวน์ (เลือกเดียว) URL และการตรวจสอบรูปแบบด้วย regex ให้ตรงกับความต้องการข้อมูลของคุณ

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

  • การตั้งค่าฟิลด์ที่มีมาให้ในตัว: ใช้ฟิลด์ข้อมูลพื้นฐานที่ตั้งค่ามาให้แล้วสำหรับคุณสมบัติผู้ใช้ทั่วไป พร้อมใช้งานทันที ใช้ฟิลด์แบบผสม (ที่อยู่, ชื่อเต็ม) เพื่อเก็บข้อมูลที่มีโครงสร้างอย่างมีประสิทธิภาพในขั้นตอนเดียว

เริ่มต้นอย่างรวดเร็ว

  1. ไปที่ Logto console > ประสบการณ์การลงชื่อเข้าใช้ > เก็บข้อมูลโปรไฟล์ผู้ใช้
  2. คลิก "เพิ่มฟิลด์โปรไฟล์" และเลือก ฟิลด์ที่มีมาให้ในตัว หรือกำหนด ข้อมูลที่กำหนดเอง (คีย์เป็นตัวอักษรและตัวเลข) เพื่อสร้าง
  3. เปิดรายละเอียดฟิลด์เพื่อกำหนดประเภทฟิลด์ ป้ายกำกับ คำอธิบาย สถานะบังคับ และการตั้งค่าเฉพาะประเภท (ความยาว ช่วง รูปแบบ ตัวเลือก ฯลฯ) จากนั้นคลิก "บันทึกการเปลี่ยนแปลง"
  4. กลับไปที่ ประสบการณ์การลงชื่อเข้าใช้ > เก็บข้อมูลโปรไฟล์ผู้ใช้ ลากและวางฟิลด์เพื่อจัดลำดับใหม่ การเปลี่ยนแปลงจะถูกนำไปใช้โดยอัตโนมัติ
  5. ทดสอบประสบการณ์ผู้ใช้ด้วย Logto live preview หรือแอปทดสอบของคุณ ไม่ว่าผู้ใช้จะสร้างบัญชีใหม่ผ่าน identifier (อีเมล / หมายเลขโทรศัพท์ / ชื่อผู้ใช้), social sign-in หรือ Enterprise SSO ทุกคนจะเห็นหน้าว่า "บอกเราเกี่ยวกับตัวคุณ" ระหว่างการลงทะเบียน
เก็บข้อมูลโปรไฟล์ผู้ใช้ระหว่างการสมัครสมาชิก

ประเภทข้อมูลผู้ใช้

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

ฟิลด์ข้อมูลผู้ใช้พื้นฐาน

ฟิลด์ข้อมูลผู้ใช้พื้นฐานที่ Logto ให้มาจะถูกจัดเก็บโดยตรงใน user หรือ user.profile ฟิลด์เหล่านี้มีค่าการตั้งค่าเริ่มต้นและการแปลภาษา i18n พร้อมใช้งานทันทีหลังจากสร้าง คุณยังสามารถปรับแต่งประเภทฟิลด์และพารามิเตอร์ให้ตรงกับความต้องการเฉพาะของคุณได้

ชื่อฟิลด์คีย์ข้อมูลผู้ใช้คำอธิบาย
Nameuser.nameชื่อเต็มของผู้ใช้ในรูปแบบที่แสดงได้ รวมทุกองค์ประกอบของชื่อ (เช่น "Jane Doe")
Fullnameuser.profile.givenName
user.profile.middleName
user.profile.familyName
ชื่อเต็มตามกฎหมายของผู้ใช้ รวม familyName, givenName และ middleName ได้อย่างยืดหยุ่นตามการตั้งค่า
Nicknameuser.profile.nicknameชื่อเล่นหรือชื่อที่คุ้นเคยของผู้ใช้ ซึ่งอาจแตกต่างจากชื่อทางการ
Birthdateuser.profile.birthdateวันเกิดของผู้ใช้ในรูปแบบที่กำหนด (เช่น "MM-dd-yyyy")
Genderuser.profile.genderเพศที่ผู้ใช้ระบุด้วยตนเอง (เช่น "หญิง", "ชาย", "ไม่ระบุ")
Profileuser.profile.profileURL ของหน้าข้อมูลโปรไฟล์ที่มนุษย์อ่านได้ของผู้ใช้ (เช่น โปรไฟล์โซเชียลมีเดีย)
Websiteuser.profile.websiteURL เว็บไซต์ส่วนตัวหรือบล็อกของผู้ใช้
Addressuser.profile.address.formatted
user.profile.address.streetAddress
user.profile.address.region
user.profile.address.zoneinfo
user.profile.address.postalCode
user.profile.address.country
ที่อยู่เต็มของผู้ใช้ (เช่น "123 Main St, Anytown, USA 12345") เลือกได้ระหว่างแบบบรรทัดเดียว (address.formatted) หรือแบบหลายบรรทัดพร้อมองค์ประกอบย่อยที่กำหนดได้ (ถนน เมือง รัฐ รหัสไปรษณีย์ ประเทศ)

ฟิลด์ข้อมูลผู้ใช้ที่กำหนดเอง

ฟิลด์ข้อมูลผู้ใช้ที่กำหนดเองคือฟิลด์ที่ผู้ใช้กำหนดขึ้นเองเพื่อเก็บข้อมูลเพิ่มเติมที่ฟิลด์พื้นฐานไม่มี เช่น ความชอบ ความสนใจ ขนาดบริษัท หรือคุณสมบัติเฉพาะทางธุรกิจอื่น ๆ

เมื่อสร้างฟิลด์ที่กำหนดเอง ให้ใช้เฉพาะตัวอักษรและตัวเลขสำหรับคีย์ข้อมูลผู้ใช้ (เช่น customData.companySize) จากนั้นคุณสามารถกำหนด ประเภทฟิลด์ และปรับแต่งคุณสมบัติเพิ่มเติมให้ตรงกับความต้องการของคุณ

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการดึงและอัปเดตข้อมูลผู้ใช้ที่กำหนดเองหลังจากสร้างผู้ใช้ ดู โครงสร้างข้อมูลผู้ใช้

ประเภทฟิลด์

เราสามารถแบ่งประเภทฟิลด์อย่างง่ายได้ดังนี้:

  • แบบพื้นฐาน: ข้อความ ตัวเลข วันที่ เช็กบ็อกซ์ (Boolean) ดรอปดาวน์ (เลือกเดียว) URL การตรวจสอบรูปแบบด้วย regex
  • แบบผสม: ชื่อเต็ม ที่อยู่

คุณสมบัติร่วม

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

การตั้งค่าเฉพาะประเภท

ประเภทด้านที่กำหนดค่าได้หมายเหตุ
ข้อความความยาวต่ำสุด / สูงสุดจำกัดความยาวข้อความที่ผู้ใช้กรอกต่ำสุดและสูงสุด
ตัวเลขค่าน้อยสุด / มากสุดจำกัดช่วงค่าตัวเลขต่ำสุดและสูงสุดที่กรอกได้
วันที่รูปแบบวันที่ (สำเร็จรูป / กำหนดเอง)เลือกรูปแบบสำเร็จ (MM/dd/yyyy, dd/MM/yyyy, yyyy-MM-dd) การเปลี่ยนตัวอย่างข้อความจะเขียนทับการโต้ตอบเริ่มต้น หรือใช้รูปแบบ date-fns ที่ปรับแต่งได้เต็มที่
เช็กบ็อกซ์ค่าเริ่มต้นติ๊ก (จริง) / ไม่ติ๊ก (เท็จ)
ดรอปดาวน์ (เลือกเดียว)รายการตัวเลือก (≥1)ใช้ value:label ต่อบรรทัด หากไม่มี label จะแสดง value
URLไม่มีไม่มี
Regexรูปแบบ regexรูปแบบตรวจสอบความถูกต้อง (ไม่ต้องใส่ / ขึ้นต้นหรือปิดท้าย) เช่น ^\d3-\d2-\d4$ สำหรับ SSN
ที่อยู่องค์ประกอบแบบบรรทัดเดียวหรือหลายบรรทัด; องค์ประกอบย่อย: ถนน เมือง รัฐ รหัสไปรษณีย์ ประเทศ
ชื่อเต็มองค์ประกอบองค์ประกอบย่อย: ชื่อจริง ชื่อกลาง นามสกุล

การตรวจสอบความถูกต้อง

การตรวจสอบความถูกต้องของฟิลด์จะดำเนินการเมื่อผู้ใช้ส่งข้อมูลในขั้นตอนสุดท้ายของการลงทะเบียน โดยจะตรวจสอบดังนี้:

  • ต้องมีข้อมูล (ยกเว้นเช็กบ็อกซ์)
  • ขอบเขตความยาว (ข้อความ)
  • ช่วงตัวเลข (ตัวเลข)
  • ตรงกับรูปแบบ (Regex, วันที่ที่มีรูปแบบ, URL, การเป็นสมาชิกตัวเลือก)
  • โครงสร้าง URL (ตรวจสอบไวยากรณ์เบื้องต้น ไม่ตรวจสอบการเข้าถึง)

ใช้กับองค์ประกอบย่อยของฟิลด์แบบผสมทั้งสอง (address และ fullname) ด้วย โดยองค์ประกอบแต่ละส่วนต้องผ่านเกณฑ์การตรวจสอบเดียวกัน

การแปลภาษา

Logto มีการแปลระดับระบบสำหรับฟิลด์ข้อมูลผู้ใช้พื้นฐาน เช่น firstName, lastName, gender และ birthdate โดยป้ายกำกับของฟิลด์เหล่านี้สามารถปรับแต่งได้ใน Logto Console คุณสามารถเขียนทับป้ายกำกับเหล่านี้ด้วยการแปลของคุณเองใน Logto > ประสบการณ์การลงชื่อเข้าใช้ > เนื้อหา

ฟิลด์ที่กำหนดเองจะขึ้นอยู่กับป้ายกำกับ ตัวอย่างข้อความ และคำอธิบายที่คุณระบุทั้งหมด สำหรับการแปลฟิลด์ที่กำหนดเอง คุณสามารถจัดการการแปลได้โดยใช้ Bring your UI หรือ ติดต่อเรา พร้อมข้อเสนอแนะของคุณ

Management API (จุดเชื่อมต่อหลัก)

MethodEndpointวัตถุประสงค์
GET/api/custom-profile-fieldsแสดงรายการฟิลด์ทั้งหมด
GET/api/custom-profile-fields/:nameดึงนิยามฟิลด์เดียวตามชื่อ
POST/api/custom-profile-fieldsสร้างฟิลด์ใหม่
POST/api/custom-profile-fields/batchสร้างหลายรายการพร้อมกัน (≤20 รายการต่อคำขอ)
PUT/api/custom-profile-fields/:nameอัปเดตฟิลด์ตามชื่อและข้อมูลทั้งหมด
DELETE/api/custom-profile-fields/:nameลบฟิลด์
POST/api/custom-profile-fields/properties/sie-orderอัปเดตลำดับฟิลด์ในประสบการณ์การลงชื่อเข้าใช้

แนวทางปฏิบัติที่ดี

  • เก็บเฉพาะข้อมูลที่จำเป็นในขั้นตอนสมัครสมาชิก ส่วนข้อมูลที่ควรมีแต่ไม่เร่งด่วนให้เก็บในภายหลัง
  • ใช้ฟิลด์แบบผสมสำหรับข้อมูลที่มีโครงสร้าง (ที่อยู่, ชื่อเต็ม) เพื่อความสอดคล้องและรองรับการแปลภาษา
  • ให้ตัวอย่าง / ตัวอย่างข้อความที่ชัดเจนสำหรับฟิลด์ที่ต้องการรูปแบบเฉพาะ (regex, วันที่, ช่วงตัวเลข)

คำถามที่พบบ่อย

ฟิลด์โปรไฟล์จะเก็บข้อมูลผู้ใช้ที่มีอยู่แล้วหรือไม่?

ไม่ ฟิลด์เหล่านี้จะเก็บข้อมูลเฉพาะจากขั้นตอนสุดท้ายของการลงทะเบียนผู้ใช้ใหม่เท่านั้น

ถ้าฉันลบฟิลด์ จะลบข้อมูลผู้ใช้ด้วยหรือไม่?

ไม่ ข้อมูลผู้ใช้ที่มีอยู่จะไม่ถูกลบ จะมีเพียงฟิลด์ที่ถูกลบออกจากฟอร์มสมัครสมาชิกในประสบการณ์ของผู้ใช้ปลายทางเท่านั้น

ฉันสามารถเก็บข้อมูลประเทศด้วยรายการที่ควบคุมได้แทนฟิลด์ข้อความธรรมดาได้หรือไม่?

ได้ คุณสามารถเปลี่ยนองค์ประกอบ "ประเทศ" ให้เป็นฟิลด์ "ดรอปดาวน์ (เลือกเดียว)" พร้อมตัวเลือกมาตรฐานได้