🇨🇳 简体中文
🇺🇸 English
🇯🇵 日本語
Skip to the content.

用户管理 Domain

概述

用户管理模块负责用户认证、权限控制和账户管理功能。

数据模型

User (用户)

class User(BaseModel):
    id: str                      # 用户ID
    username: str                # 用户名
    email: str                   # 邮箱
    user_type: UserType         # 用户类型 (admin | user)
    status: UserStatus          # 用户状态 (active | inactive)
    created_at: datetime        # 创建时间
    updated_at: datetime        # 更新时间

UserType (用户类型枚举)

class UserType(str, Enum):
    ADMIN = "admin"             # 管理员
    USER = "user"               # 普通用户

UserStatus (用户状态枚举)

class UserStatus(str, Enum):
    ACTIVE = "active"           # 激活状态
    INACTIVE = "inactive"       # 非激活状态

LoginRequest (登录请求)

class LoginRequest(BaseModel):
    username: str               # 用户名
    password: str               # 密码
    captcha: str                # 验证码

LoginResponse (登录响应)

class LoginResponse(BaseModel):
    access_token: str           # 访问令牌
    token_type: str             # 令牌类型
    user: User                  # 用户信息

业务规则

用户认证

  1. 支持用户名/密码登录
  2. 使用JWT令牌进行身份验证
  3. 令牌有效期为7天
  4. 密码使用PBKDF2加密存储

权限控制

  1. 管理员权限:用户管理、券商管理、数据源管理
  2. 普通用户权限:查看自己的数据、券商配置
  3. 敏感信息对普通用户隐藏

默认用户

⚠️ 生产环境安全要求

API设计

认证相关

用户管理(管理员权限)

安全考虑

  1. 密码加密存储(PBKDF2)
  2. JWT令牌认证
  3. 权限分级控制
  4. 敏感信息脱敏显示