#table#sml#identity#login#main-db
sml_user_list — ผู้ใช้ล็อกอิน
ทะเบียนผู้ใช้ที่ล็อกอินเข้าระบบ อยู่ใน Main Database ของ Tenant (ฐานตัวตนต่อ Tenant — ตาม backend/CONTEXT.md) ไม่ใช่ฐานบริษัท ผู้ใช้หนึ่งคนถูกผูกกับบริษัทผ่าน sml_database_list_user_and_group — สิทธิ์เข้าบริษัท (Access Grant) ตารางเดิม (legacy) ที่โค้ดเพิ่มคอลัมน์เองบางส่วน
คอลัมน์
(ชนิดจาก schema ทดสอบ identity_schema.sql:9-21 + ALTER ในโค้ด)
| คอลัมน์ | ชนิด | ความหมายตามโค้ด |
|---|---|---|
user_code |
varchar(50) PK | รหัสผู้ใช้ — ค้นแบบไม่สนตัวพิมพ์ (UPPER) ใน FindByCode |
user_name |
varchar(100) | ชื่อ |
user_password |
varchar(25) ในสคีมาทดสอบ → โค้ดแอดมิน ALTER เป็น VARCHAR(255) (handler.go:257) | รหัสผ่าน: bcrypt ($2a$/$2b$/$2y$) หรือ legacy plaintext — ตรวจใน domain/identity/identity.go:41-64 · ห้ามเปิดเผยค่า |
user_level |
smallint | ระดับ — ≥ 9 = แอดมินเว็บ (application/identity/service.go:162) |
active_status |
smallint | 1 = ใช้งาน |
device_id |
varchar(200) | รหัสอุปกรณ์ (ไม่ชัดจากโค้ดว่าใช้ทำอะไรต่อ) |
email |
TEXT | เพิ่มด้วย ALTER … ADD COLUMN IF NOT EXISTS (handler.go:185, workspace_google.go:38) |
line_user_id |
TEXT | ผูก LINE — ALTER IF NOT EXISTS (workspace_google.go:39) |
ignore_sync, is_lock_record, roworder, create_date_time_now |
— | คอลัมน์ฝั่งโปรแกรมเดิม ไม่ใช้ในเว็บ (ตามคอมเมนต์ในสคีมาทดสอบ) |
ใครอ่าน/เขียน
- ล็อกอิน:
UserRepository.FindByCode(postgres_repository.go:39-62) - แอดมินเพิ่ม/แก้/ลบผู้ใช้: admin/handler.go:268-424
- workspace Google ผูก/สร้างผู้ใช้จากอีเมล (workspace_google.go)
- ความปลอดภัย: เขียนผ่านเกตเวย์
/query/execได้เฉพาะuserLevel >= 9(domain/query/query.go:63, 362); MCP gateway ห้ามอ่านตารางนี้ (mcp/gateway.go:30)
ความสัมพันธ์
- → sml_database_list_user_and_group — สิทธิ์เข้าบริษัท (Access Grant) (
user_or_group_code) กำหนดบริษัทที่เข้าได้ - → สิทธิ์เมนู
sml_permissions_user(usercode) และกลุ่มsml_user_and_group(กลุ่มตาราง sml_* — ตัวตน สิทธิ์ และตารางระบบ, การตรวจสิทธิ์เมนูของ route process (Process route rights)) erp_user(erp_user — ผู้ใช้/พนักงานในฐานบริษัท) เป็นข้อมูลพนักงานระดับบริษัท คนละตาราง
ลิงก์
sml_database_list — ทะเบียนบริษัท (Company registry) · เช็กลิสต์ความปลอดภัย API: ตัวตน สิทธิ์ และช่องโหว่เว็บ (Secure API Checklist) · กลุ่มตาราง sml_* — ตัวตน สิทธิ์ และตารางระบบ