Luồng Web App (Authorization Code Flow)
Kịch bản 1: Từ TH3 cần login SSO có redirect

Các bước chi tiết
- Người dùng mở Web TH3 → bấm nút "Đăng nhập bằng HUTECH ID"
- Web TH3 redirect trình duyệt sang cổng SSO (Client SSO) với thông tin
client_idvàredirect_uri - Cổng SSO hiển thị form đăng nhập, người dùng nhập tài khoản/mật khẩu
- Server SSO (IdP) xác thực thành công → trả về
authorization_codevà redirect vềredirect_uricủa App TH3 - App TH3 Backend nhận
authorization_code→ gọi API IdP (server-to-server) kèmclient_idvàsecretđể đổi code lấy Access Token - IdP trả về Access Token (và thông tin user)
- App TH3 dùng token này để xác thực phiên → hiển thị trang chính cho người dùng
Kịch bản 2: Đứng ở SSO đi trực tiếp đến các bên Th3
- Người dùng đã đăng nhập thành công vào SSO (có session sẵn)
- Trên trang danh sách ứng dụng của SSO, người dùng click vào ứng dụng X
- SSO cấp
authorization_codevà redirect người dùng về URL callback của ứng dụng X - Trình duyệt chuyển sang App Backend kèm theo
authorization_code - App Backend gọi sang SSO (server-to-server) để đổi code lấy Access Token (dùng
client_id+secret) - SSO trả về Access Token và thông tin người dùng
- App Backend xác thực token, tạo session cục bộ, và hiển thị trang chính của ứng dụng X cho người dùng
Hướng dẫn tích hợp
Bước 1: Redirect đến SSO
GET [Domain-Client-SSO]/login-sso?client_id={client_id}&backlink={redirect_uri}
| Parameter | Mô tả |
|---|---|
client_id | Nhận từ HUTECH TEAM |
backlink | Đường dẫn của App client dùng để nhận redirect (optional) |
Bước 2: Nhận authorization_code
SSO sẽ redirect về backlink kèm authorization_code:
GET {redirect_uri}?code={authorization_code}