dramaling-app/docs/02_design/function-specs/web/用戶認證功能規格_Web.md

12 KiB
Raw Blame History

用戶認證功能規格文檔 (Web版)

📋 功能概述

功能名稱: 用戶認證系統 (Web端)
建立日期: 2025-09-09
最後更新: 2025-09-09
負責團隊: 前端Web/設計/開發
對應Mobile規格: ../mobile/05_用戶認證功能規格.md

主要功能

  • 多元化註冊登入支援Email、第三方OAuth、SSO等方式
  • 安全密碼管理,包含強度檢測、加密存儲、定期更新提醒
  • 多帳戶整合,支援多個第三方帳戶綁定和統一管理
  • 會話管理,靈活的登入狀態控制和安全登出
  • 帳戶安全保護,二次認證、異常登入檢測、帳戶鎖定機制
  • 個人資料管理,完整的用戶資訊編輯和隱私控制

Web端特色功能

  • SSO企業登入: 支援企業級單一登入(SAML/OIDC)
  • 多設備管理: 查看和管理所有登入設備
  • 記住登入狀態: 可選擇記住登入30天/永久
  • 密碼管理器整合: 與瀏覽器密碼管理器無縫整合
  • 安全金鑰支援: WebAuthn/FIDO2安全金鑰登入
  • 帳戶資料匯出: GDPR合規的個人資料匯出功能
  • 進階隱私設定: 詳細的隱私控制和資料共享設定

適用場景

  • 企業和教育機構的統一帳戶管理
  • 需要高安全性的商務用戶認證
  • 多設備跨平台的帳戶同步需求
  • 家庭用戶的多成員帳戶管理

與其他功能的關聯

  • 學習系統: 認證狀態決定學習內容和功能權限
  • 道具商店: 付費功能需要安全的帳戶認證
  • 社交功能: 帳戶綁定支援社交分享和好友系統
  • 數據分析: 用戶認證數據用於個性化學習推薦
  • 客服系統: 帳戶問題的客服支援和身份驗證

💻 涉及的Web頁面

主要頁面

  1. Page_Login_Main_W - 登入主頁面 (Web版)
  2. Page_Register_Main_W - 註冊主頁面 (Web版)
  3. Page_Password_Reset_W - 密碼重設頁面 (Web版)
  4. Page_Profile_Main_W - 個人資料頁面 (Web版)
  5. Page_Account_Settings_W - 帳戶設定頁面 (Web版)
  6. Page_Security_Settings_W - 安全設定頁面 (Web版)

Web專用頁面

  1. Page_Device_Management_W - 設備管理頁面 (Web專用)
  2. Page_Privacy_Settings_W - 隱私設定頁面 (Web專用)
  3. Page_Data_Export_W - 資料匯出頁面 (Web專用)
  4. Page_Account_Linking_W - 帳戶綁定管理 (Web專用)
  5. Page_Enterprise_SSO_W - 企業SSO設定 (Web專用)

輔助頁面

  1. Page_Email_Verification_W - 電子郵件驗證頁面
  2. Page_Two_Factor_Setup_W - 二次認證設定頁面
  3. Page_Account_Recovery_W - 帳戶恢復頁面
  4. Modal_Security_Alert_W - 安全警告模態視窗

🎯 詳細頁面規格

Page_Login_Main_W - 登入主頁面 (Web版)

功能說明

  • 頁面目的: 在桌面環境提供安全便捷的用戶登入體驗
  • 進入條件: 訪問需要認證的功能或直接輸入登入URL
  • 退出條件: 成功登入後跳轉到目標頁面或主頁

Web版佈局特點

  • 居中登入卡片: 響應式登入表單,支援多種螢幕尺寸
  • 第三方登入區域: 並列顯示多個第三方登入選項
  • 安全提示區域: 顯示安全建議和最近登入資訊
  • 企業登入入口: 企業用戶的SSO登入入口
  • 背景視覺設計: 品牌一致的背景圖片或動畫

頁面欄位細節

欄位名稱 資料類型 必填 預設值 驗證規則 顯示條件
登入帳號 String - Email格式或用戶名 主要輸入框
登入密碼 String - 6-128字符 密碼輸入框
記住登入 Boolean false true/false 記住登入選項
記住時長 String "30days" 時長枚舉 記住登入子選項
驗證碼 String - 驗證碼格式 安全策略觸發時
登入方式 String "email" 登入方式枚舉 登入方式切換
企業網域 String - 網域格式 企業登入模式
上次登入時間 Date - 日期時間 歡迎回來提示
登入裝置資訊 String - 裝置資訊 安全提示

Web版互動元素

元素名稱 元素類型 操作方式 快捷鍵 狀態變化 備註
帳號輸入框 文本框 點擊/自動焦點 Tab 空白→輸入中 支援自動完成
密碼輸入框 密碼框 點擊/Tab Tab 隱藏→顯示 顯示/隱藏切換
登入按鈕 按鈕 點擊/Enter Enter 正常→登入中 主要操作按鈕
忘記密碼連結 連結 點擊/F鍵 F - 跳轉密碼重設
Google登入 按鈕 點擊/G鍵 G 正常→認證中 第三方OAuth
Apple登入 按鈕 點擊/A鍵 A 正常→認證中 第三方OAuth
企業SSO 按鈕 點擊/E鍵 E 正常→跳轉中 企業登入入口
密碼顯示切換 按鈕 點擊/Ctrl+H Ctrl+H 隱藏↔顯示 密碼可視性控制
驗證碼刷新 按鈕 點擊/R鍵 R - 重新獲取驗證碼

Web版使用者操作流程

  1. 基本登入: 輸入帳號密碼 → 選擇記住登入 → 點擊登入 → 驗證成功進入系統
  2. 第三方登入: 選擇第三方平台 → 跳轉認證 → 授權確認 → 回到應用完成登入
  3. 企業登入: 選擇企業登入 → 輸入企業網域 → 跳轉SSO → 企業認證 → 自動登入
  4. 安全驗證: 觸發安全檢查 → 輸入驗證碼 → 通過二次認證 → 成功登入

Page_Privacy_Settings_W - 隱私設定頁面 (Web專用)

功能說明

  • 頁面目的: 提供完整的隱私控制設定符合GDPR等隱私法規要求
  • 進入條件: 從帳戶設定進入或隱私政策連結進入
  • 退出條件: 保存隱私設定或取消修改

Web專有隱私功能

  • 資料處理同意: 詳細的資料處理用途說明和同意選項
  • Cookie控制: 細粒度的Cookie類別控制
  • 資料共享設定: 控制資料與第三方的共享範圍
  • 行為追蹤控制: 學習行為和使用數據的追蹤設定
  • 資料保留政策: 個人資料的保留期限設定
  • 匿名化選項: 資料匿名化處理的選擇

頁面欄位細節

欄位名稱 資料類型 必填 預設值 驗證規則 顯示條件
資料收集同意 Object {} 同意設定物件 分類同意區域
Cookie偏好設定 Object {} Cookie設定 Cookie控制面板
行銷通訊同意 Boolean false true/false 通訊偏好設定
第三方資料共享 Object {} 共享設定物件 資料共享控制
個人化設定 Boolean true true/false 個人化同意
分析資料收集 Boolean false true/false 分析同意設定
資料匯出格式 String "json" 格式枚舉 資料匯出選項
帳戶刪除原因 String - 1-500字 刪除帳戶時

Page_Device_Management_W - 設備管理頁面 (Web專用)

功能說明

  • 頁面目的: 管理所有已登入的設備,提供安全的設備控制功能
  • 進入條件: 從安全設定進入或安全警告時引導進入
  • 退出條件: 完成設備管理或返回安全設定

Web專有設備管理

  • 活躍設備列表: 顯示所有當前登入的設備
  • 設備詳細資訊: 設備類型、瀏覽器、IP位置、登入時間
  • 遠程登出: 可遠程登出指定設備或全部設備
  • 可信設備: 標記可信設備,減少安全驗證
  • 登入通知: 新設備登入的電子郵件通知設定

頁面欄位細節

欄位名稱 資料類型 必填 預設值 驗證規則 顯示條件
設備列表 Array [] 設備陣列 主要列表區域
當前設備標識 String - 設備ID 當前設備標記
設備類型 String - 設備類型枚舉 設備圖示
瀏覽器資訊 String - 瀏覽器字串 技術資訊
IP位置 String - IP地址 地理位置
最後活躍時間 Date - 日期時間 活動時間
可信狀態 Boolean false true/false 信任標記
登入通知設定 Boolean true true/false 通知偏好

🌐 Web端技術特點

企業級認證整合

  • SAML 2.0: 支援SAML單一登入協議
  • OpenID Connect: OIDC標準認證流程
  • LDAP整合: 企業LDAP目錄服務整合
  • Active Directory: 微軟AD域控制器整合

現代Web認證標準

  • WebAuthn: 無密碼登入和硬體安全金鑰
  • FIDO2: 強認證標準支援
  • PassKeys: 蘋果/Google PassKeys整合
  • Biometric: 瀏覽器生物識別API

安全性增強

  • CSP嚴格模式: 內容安全政策防止XSS
  • SameSite Cookie: 防止CSRF攻擊
  • HSTS: 強制HTTPS傳輸安全
  • Rate Limiting: API速率限制防止暴力破解

隱私合規支援

  • GDPR合規: 歐盟一般資料保護規範
  • CCPA合規: 加州消費者隱私法案
  • Cookie Law: 歐盟Cookie指令合規
  • Data Portability: 資料可攜權實現

⌨️ Web版快捷鍵系統

認證頁面快捷鍵

  • Tab - 在表單欄位間切換
  • Enter - 提交當前表單
  • Esc - 取消當前操作
  • F - 快速前往忘記密碼
  • G - Google登入
  • A - Apple登入
  • E - 企業登入

設定頁面快捷鍵

  • Ctrl + S - 保存設定
  • Ctrl + R - 重置為預設值
  • Ctrl + E - 匯出個人資料
  • Ctrl + D - 下載資料副本
  • Delete - 刪除選中項目

安全操作快捷鍵

  • Ctrl + L - 登出當前設備
  • Ctrl + Shift + L - 登出所有設備
  • Ctrl + T - 切換可信設備狀態
  • F5 - 重新整理設備列表
  • Ctrl + N - 開啟新的安全金鑰設定

📊 Web版業務邏輯差異

會話管理策略

  • 長效會話: 支援30天/永久記住登入
  • 多標籤同步: 跨瀏覽器標籤的登入狀態同步
  • 自動續期: 活躍使用時自動延長會話期限
  • 閒置檢測: 檢測用戶閒置並提示安全登出

密碼安全增強

  • 密碼強度指示: 即時密碼強度評估和建議
  • 密碼歷史: 防止重複使用近期密碼
  • 自動生成: 集成密碼生成器建議強密碼
  • 洩漏檢測: 檢測密碼是否出現在已知洩漏資料庫

隱私控制細化

  • 分級同意: 不同類別資料的分別同意機制
  • 同意撤回: 隨時撤回資料處理同意
  • 影響說明: 清楚說明撤回同意對功能的影響
  • 資料最小化: 僅收集必要的最少資料

🧪 Web版測試要點

認證流程測試

  • 基本帳密登入流程正常
  • 第三方OAuth登入正常
  • 密碼重設流程完整
  • 帳戶註冊驗證正常
  • 二次認證設定和使用正常

安全功能測試

  • 異常登入檢測和通知
  • 帳戶鎖定機制正確觸發
  • 設備管理功能完整
  • 遠程登出功能正常
  • 安全金鑰登入正常

隱私合規測試

  • GDPR資料匯出功能正常
  • Cookie同意機制正確
  • 資料處理同意記錄完整
  • 帳戶刪除流程合規
  • 隱私政策同意機制正常

跨瀏覽器測試

  • Chrome認證功能完整
  • Firefox第三方登入正常
  • Safari WebAuthn支援正常
  • Edge企業SSO功能正常

📝 Web端開發注意事項

安全實作要求

  • 所有認證相關請求強制HTTPS
  • 敏感資訊絕不在前端儲存
  • 實施嚴格的CSP政策
  • 使用安全的會話管理機制

隱私合規實作

  • 實施同意管理平台(CMP)
  • 提供完整的資料處理透明度
  • 實現用戶權利行使機制
  • 定期隱私影響評估

使用者體驗設計

  • 簡化認證流程,減少摩擦
  • 提供清楚的錯誤訊息和解決方案
  • 支援無障礙設備和輔助技術
  • 響應式設計適應各種螢幕尺寸

效能最佳化

  • 認證頁面快速載入(<1秒)
  • 第三方認證回調處理最佳化
  • 設備列表分頁載入避免效能問題
  • 使用適當的快取策略

文檔狀態: 🟢 已完成
最後更新: 2025-09-09
版本: v1.0
相關文檔:

  • ../mobile/05_用戶認證功能規格.md - 對應的Mobile版規格
  • ../common/業務規則.md - 共同業務邏輯
  • ../common/數據模型.md - 數據結構定義
  • ../common/API規格.md - API接口規格