- Created MemberCenter.Installer project with references to Infrastructure, Application, and Domain projects. - Added Program.cs with a basic console output. - Generated MemberCenterDbContextModelSnapshot for database schema representation.
會員平台(Member Center)
此專案為多網站共用的會員登入中心與電子報訂閱管理平台。文件統一放在 docs/。
目標(MVP)
- 多個網站共用的會員登入中心(SSO)
- OAuth2 + OIDC 登入(API 與 Redirect 兩種方式)
- 電子報訂閱管理(含未註冊訂閱)
- 未註冊訂閱者可自行取消訂閱
- 未註冊訂閱者未來註冊可沿用訂閱資料
既定條件
- OAuth2 + OIDC
- 會員中心只負責 Email/訂閱管理,發送系統另建
- 訂閱採 double opt-in
- 各站各自設計 UI,主要走 API;少數狀況使用 redirect
- 會員資料跨站共享(邏輯隔離)
- 訂閱事件同步採 event/queue
- DB:PostgreSQL
- 開發:C# .NET Core + MVC + OpenIddict
範圍(第一階段)
- 多租戶(站點)概念與基本設定
- 會員與訂閱者 Email 身分識別
- OAuth2/OIDC 授權(Authorization Code + PKCE)
- 訂閱/取消訂閱流程(含未註冊)
- 基本管理後台(核心 CRUD)
非目標(暫不處理)
- 第三方社群登入
- MFA
- 行銷自動化或行為追蹤
- 金流/付費會員
文件
docs/DESIGN.mddocs/UI.mddocs/USE_CASES.mddocs/FLOWS.mddocs/OPENAPI.mddocs/openapi.yamldocs/SCHEMA.sqldocs/TECH_STACK.mddocs/SEED.sqldocs/INSTALL.md
待確認事項
- OAuth2 scopes 與最小 claims(email/profile)
- 事件系統選擇(Kafka/RabbitMQ/SNS+SQS)
- 取消訂閱的 UI 形式(純一鍵或提供偏好)
- GDPR/CCPA 資料匯出與刪除是否納入第一期
Description
Languages
C#
92.1%
HTML
7%
CSS
0.8%
JavaScript
0.1%