refactor: 凭证下沉账号层——平台不再持有API凭证;账号支持登录凭证+API配置,SDK测试/同步改为账号维度,同步产出自动挂账号;含存量数据自动迁移

This commit is contained in:
gouki
2026-08-09 16:50:45 +00:00
parent cf18cadb6b
commit dc2134cf5a
9 changed files with 355 additions and 103 deletions
+12
View File
@@ -202,6 +202,8 @@ class Account(SQLModel, table=True):
"""平台账号字典:统一管理各平台下的账号(多账号场景区分归属)
资产的 Asset.account 字段按名称引用本表,重命名时由服务层同步更新引用。
凭证层:登录用户名/密码(网站登录)+ API 配置 JSON(SDK 同步用),
平台本身不再持有凭证(Provider.api_config_encrypted 已弃用,仅留历史值)。
"""
__tablename__ = "accounts"
@@ -212,4 +214,14 @@ class Account(SQLModel, table=True):
default=None, index=True, description="所属平台(slug 或名称)"
)
remark: Optional[str] = Field(default=None, description="备注")
login_user: Optional[str] = Field(default=None, description="登录用户名/邮箱")
login_password_encrypted: Optional[str] = Field(
default=None, description="加密的登录密码(Fernet"
)
api_config_encrypted: Optional[str] = Field(
default=None, description="加密的 API 配置 JSONaccess_key/secret/api_key 等,供 SDK 同步)"
)
last_synced_at: Optional[datetime] = Field(
default=None, description="最近一次 SDK 同步时间"
)
created_at: datetime = Field(default_factory=utcnow, description="创建时间")