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
+15 -2
View File
@@ -1,4 +1,9 @@
"""平台账号 Schema"""
"""平台账号 Schema
凭证语义约定:
- login_password / api_configCreate 时传入即加密存储;Update 时 None 表示不修改。
- Read 永不返回凭证明文/密文,只给布尔标记(has_login_password / has_api_config)。
"""
from datetime import datetime
from typing import Optional
@@ -10,19 +15,27 @@ class AccountBase(SQLModel):
name: str
platform: Optional[str] = None
remark: Optional[str] = None
login_user: Optional[str] = None
class AccountCreate(AccountBase):
pass
login_password: Optional[str] = None # 登录密码(明文传入,加密存储)
api_config: Optional[str] = None # API 配置 JSON 字符串(加密存储,供 SDK 同步)
class AccountUpdate(SQLModel):
name: Optional[str] = None
platform: Optional[str] = None
remark: Optional[str] = None
login_user: Optional[str] = None
login_password: Optional[str] = None # None = 不修改
api_config: Optional[str] = None # None = 不修改
class AccountRead(AccountBase):
id: int
created_at: datetime
asset_count: int = 0 # 引用该账号的资产数(列表接口填充)
has_login_password: bool = False
has_api_config: bool = False
last_synced_at: Optional[datetime] = None