進階
在自訂域名下如何跳轉到跨店家總覽?
自訂域名(如 wangbeauty.com)的客戶,點「跨店家總覽」時需要 SSO Bridge 換成平台 cookie,本文說明機制與常見問題。
為什麼需要 SSO Bridge?
客戶在 wangbeauty.com 登入後,Session cookie 只存在於 wangbeauty.com 域名。 /customer/dashboard(跨店家總覽)需要 easybeautylife.com 上的統一身份 cookie, 兩個域名的 cookie 無法互通,必須透過一次性 JWT 橋接。
流程說明
- 客戶在 wangbeauty.com 點「切換店家」或「跨店家總覽」
- 前端呼叫
/api/v1/public/customer-auth/sso-bridge-issue(帶 wangbeauty.com cookie) - 後端驗 session → 取 unifiedIdentityId → 簽一張 60 秒 JWT
- 前端收到 redirectUrl → 瀏覽器跳轉到 easybeautylife.com/sso-bridge-accept?t=...
- 後端驗 JWT → 在 easybeautylife.com 寫入統一 session cookie → 302 到 /customer/dashboard
客戶沒有統一身份怎麼辦?
如果客戶從未透過 LINE 或 Email 驗證(例如老師端直接建的客戶), 系統會自動嘗試建立統一身份。 若 LINE / Email 都是 null(純名單匯入),會提示客戶先完成身份驗證再使用跨店家功能。
安全性
- JWT TTL 僅 60 秒,replay 視窗極小
- JWT audience 限定
bbos-sso-bridge,無法被其他 JWT 驗證器接受 - 簽名金鑰與 NEXTAUTH_SECRET 一致,更換時一起換
- acceptor 驗簽名後才查 DB,無效 token 不觸碰資料庫
這篇有用嗎?