03 · Persistence & integrations — sso-api
Data stores
| Store | Connection name | Database | หลักฐาน |
|---|---|---|---|
| MSSQL | main | ไม่ระบุชื่อฐานข้อมูลจริงในโค้ด — มาจาก env DB_NAME ที่ไม่มี .env/.env.example ให้ตรวจ (UNVERIFIED) | sso-api/src/app.module.ts:20-25, config/configuration.ts:6-20 |
| ตารางที่ใช้จริง | SSOUsers (เขียน+อ่าน) | mapping idCard/empCode ↔ ssoId | sso-api/src/entities/sso-user.entity.ts:10-45 |
| ตารางที่อ่านข้าม schema | dbHRMI_Center.dbo.temp_pee_na_table, dbHRMI_Center.dbo.emPerson (cross-database query ตรงบน connection เดียวกัน) | ข้อมูลพนักงานจาก HRMI สำหรับ auto-provision username | sso-api/src/app.service.ts:78-96 |
External integrations (พิสูจน์จากโค้ด)
| ปลายทาง | Endpoint | Auth | หลักฐาน |
|---|---|---|---|
SSO ภายนอก (SSO_END_POINT) | POST /ssoLogin | HTTP Basic Auth (SSO_USERNAME/SSO_PASSWORD) + body เข้ารหัส AES | sso-api/src/app.service.ts:145-164 |
| SSO ภายนอก | POST /ssoLogout | เดียวกัน | sso-api/src/app.service.ts:195-213 |
| SSO ภายนอก | POST /ssoRequest2FA | เดียวกัน | sso-api/src/app.service.ts:227-249 |
| SSO ภายนอก | POST /ssoVerify2FA | เดียวกัน + header token เพิ่ม | sso-api/src/app.service.ts:258-278 |
| SSO ภายนอก | POST /ssoGetNewUsername | เดียวกัน | sso-api/libs/common/get-new-username.ts:6-24 |
โดเมน/โฮสต์จริงของ SSO_END_POINT UNVERIFIED — ไม่มี .env/.env.example ใน repo ให้ตรวจสอบ
Cron / queue jobs
ไม่พบ — ไม่มี @nestjs/schedule, cron, หรือ queue library ใดใน package.json ของ repo นี้