refactor: 凭证下沉账号层——平台不再持有API凭证;账号支持登录凭证+API配置,SDK测试/同步改为账号维度,同步产出自动挂账号;含存量数据自动迁移
This commit is contained in:
+15
-2
@@ -1,4 +1,9 @@
|
||||
"""平台账号 Schema"""
|
||||
"""平台账号 Schema
|
||||
|
||||
凭证语义约定:
|
||||
- login_password / api_config:Create 时传入即加密存储;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
|
||||
|
||||
Reference in New Issue
Block a user