Skip to content

sso-api

sso-api (default branch main ว่างเปล่า, canonical: master, 35 ไฟล์) เป็น gateway/adapter ที่คั่นระหว่างแพลตฟอร์ม VTRC กับระบบ SSO ภายนอกของสภากาชาดไทย (เรียกผ่าน SSO_END_POINT ด้วย HTTP Basic Auth + AES encryption ของ username/password) พร้อมกลไก auto-provision username SSO ตัวใหม่จากข้อมูลพนักงานใน HRMI ถ้ายังไม่เคยผูก SSO มาก่อน

repo นี้ยังอยู่ในสถานะพัฒนาตอนต้น — ไม่มี Dockerfile, ไม่มี docker-compose.yml, ไม่มี .env/.env.example ใด ๆ commit เข้า git (ต่างจากอีก 4 repo ในกลุ่มที่ตรวจสอบ) วิธี deploy จริงจึง UNVERIFIED จากในโค้ด

Stack และเวอร์ชัน

ส่วนค่าหลักฐาน
FrameworkNestJS ^10.0.0ใหม่กว่า อีก 4 repo ในกลุ่มนี้ที่ยังอยู่ ^9.0.0sso-api/package.json:23-29 (branch: master)
ORMTypeORM ^0.3.20 บน MSSQL, connection ชื่อ mainsso-api/src/app.module.ts:20-25
JWT@nestjs/jwt ^10.2.0 (สร้าง JwtModule.register() แต่การ sign token จริงถูก comment ปิดไว้ — ดู 02-core-pipeline)sso-api/package.json:26, src/app.module.ts:16-19
Auth (ฝั่งรับ request)Passport JWT ผ่าน guard เดียวกับ template กลางsso-api/libs/jwt/jwt-auth.guard.ts
EncryptionAES-256-CBC (custom, libs/common/aes-encrypt.ts / aes-decrypt.ts)sso-api/libs/common/aes-encrypt.ts:3-13

Entry point

src/main.ts — bootstrap ด้วย NestFactory.create() (พิมพ์เป็น NestExpressApplication), global prefix {BASE_PATH}{API_VERSION_PATH}, JwtAuthGuard เป็น global guard, Swagger ที่ {BASE_PATH}docs (sso-api/src/main.ts:10-42, branch: master)

พอร์ตและ path

พอร์ตจริง UNVERIFIED — ไม่มี .env/.env.example ใน repo config/configuration.ts อ่าน process.env.PORT แบบไม่มี default ที่ hardcode ไว้ในโค้ด (sso-api/config/configuration.ts:4, src/main.ts:19 fallback เป็น 3000 ถ้า ConfigService คืนค่า falsy) BASE_PATH/API_VERSION_PATH เช่นเดียวกันคือ env var ที่ไม่มีค่า default ปรากฏในโค้ด

Deploy artifact

UNVERIFIED — ไม่พบ Dockerfile, docker-compose.yml, หรือ CI pipeline file ใดในทั้ง repo (branch: master) ต่างจาก chat-center-api, job-scheduler-api, vtrc-common ที่มีครบ

สารบัญ