# UI 規劃(管理者 / 會員) ## 會員中心(統一 UI) ### 會員端 - 註冊 / 登入 / 忘記密碼 / 修改密碼 - Email 驗證 - 個人資料(基本資料、聯絡方式、公司資訊) - 收貨地址簿 - 訂閱管理(清單與退訂) - 退訂(單一清單) - 連結外站(可選:回到來源站點) ### 管理者端 - 租戶管理(Tenant CRUD) - OAuth Client 管理(usage / redirect_uris / client_id / client_secret;scope 由 usage 自動配置) - 電子報清單管理(Lists CRUD) - 訂閱查詢 / 匯出 - 審計紀錄查詢 - 系統設定(安全策略、token 時效) - Auth 資源設定(resource / audience / scope / usage mapping) ## 各站自建 UI(API) ### 會員端 - 登入 / 註冊 / 忘記密碼 / 修改密碼 - Email 驗證頁(可自建或導回會員中心) - 訂閱表單(未登入) - 外站自建訂閱偏好管理(登入後,走 API) - 退訂頁(從 email token 進來) ### 管理者端 - 站內顯示會員資料(只讀) - 站內訂閱狀態顯示 ## UI 核心原則 - 會員中心 UI 為統一入口(少數情境) - 其餘皆走 API 與各站自建 UI - 會員中心 UI 不承擔行銷內容或寄送 - `MemberCenter.Web` 採 client-first 介面;admin 功能以角色判斷後顯示於同一登入入口內 - `/admin/*` 由 `Areas/Admin` 提供獨立管理區殼層 - 非 admin 或未登入存取 `/admin/*` 時,回 `404` ## UI 路徑對應(Use Cases) ### 會員端(統一 UI) - UC-01 註冊會員: `/account/register` - UC-02 登入: `/account/login` - UC-03 登出: `POST /account/logout`(外站 direct logout 可導向 `GET /account/logout?returnUrl=...`) - UC-04 忘記密碼 / 重設密碼: `/account/forgotpassword`, `/account/resetpassword` - UC-04.1 已登入修改密碼: `/account/changepassword` - UC-05 Email 驗證: `/account/verifyemail?email=...&token=...` - UC-07 訂閱確認(double opt-in): `/newsletter/confirm?token=...` - UC-08 取消訂閱(單一清單): `/newsletter/unsubscribe?token=...` - UC-09 訂閱偏好管理(外站整合 API): `/newsletter/preferences?list_id=...&email=...` - UC-10 會員資料查看 / 編輯: `/profile` - UC-10.1 收貨地址簿管理: `/profile/addresses` - UC-10.2 我的電子報訂閱: `/profile/subscriptions` ### 管理者端(統一 UI) - UC-11 租戶管理: `/admin/tenants` - UC-11.1 Tenant 可設定 `Send Engine Webhook Client Id`(UUID) - UC-12 OAuth Client 管理: `/admin/oauth-clients`(建立時顯示一次 client_secret,可旋轉;可選 `usage=tenant_api` / `send_api` / `web_login` / `webhook_outbound` / `platform_service` / `file_api`;`platform_service` / `web_login` 可不指定 tenant) - `redirect_uris` 僅 `web_login` / `webhook_outbound` 需要;其餘 usage 不需要 - `tenant_api` / `send_api` / `platform_service` / `file_api` 強制 `client_type=confidential` - UC-13 電子報清單管理: `/admin/newsletter-lists` - UC-14 訂閱查詢 / 匯出: `/admin/subscriptions`, `/admin/subscriptions/export` - UC-15 審計紀錄查詢: `/admin/audit-logs` - UC-16 安全策略設定: `/admin/security` - UC-16.1 Auth 資源設定:建議整併於 `/admin/security` 或其子頁籤,而非獨立新頁 - 管理 `Issuer` 顯示資訊與非敏感 Auth 設定 - 管理 resource registry,例如 `member_center_api`、`send_engine_api`、`file_access_api` - audience 設定建議放在現有 Auth / Security 設定畫面下,而不是放到 SMTP / Send Engine 整合設定頁