refactor(auth): 去多身份/多端口——账号单一角色,删 user_identities/select-identity/多端口路由
- 删 UserIdentity 模型/IdentityRepository/db.identities,账号统一单一角色(users.role) - auth.py 去 select-identity/_identity_summaries,登录恒返回 identities=[];_login_response_for_user 按单角色签发 - 删多端口路由 rbac_government/investor/developer 及其 main 挂载 - seed 去多身份回填(_migrate_identities/_ensure_port_agents/多端身份/端口标签映射) - dependencies: require_port 去端口隔离(单角色放宽)、optional_current_user 修 identity_id 多余参数 - user_admin_service create_user 不再建端口身份;schemas 去 SelectIdentityRequest - 新增迁移 0014_drop_user_identities(drop user_identities 表) - 测试改写为单角色契约(登录空 identities、无 select-identity、账号级智能体) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -6,14 +6,6 @@ from fastapi import HTTPException
|
||||
|
||||
from ..infrastructure.repositories import Database
|
||||
|
||||
# 业务角色 → 端口映射(与领域规则一致)
|
||||
_PORT_FOR_ROLE = {
|
||||
"opc_member": "opc", "carrier": "carrier", "enterprise": "enterprise",
|
||||
"provider": "provider", "government": "government", "operator": "operator",
|
||||
"investor": "investor", "developer": "developer",
|
||||
}
|
||||
|
||||
|
||||
class UserAdminService:
|
||||
"""运营端账号/角色管理。"""
|
||||
|
||||
@@ -43,11 +35,6 @@ class UserAdminService:
|
||||
role=req.role, sub_role=req.sub_role, org_id=req.org_id, region_id=req.region_id,
|
||||
source="admin", auth_type="admin",
|
||||
)
|
||||
await self.db.identities.create(
|
||||
user["id"], port=_PORT_FOR_ROLE.get(req.role, "opc"), role=req.role,
|
||||
sub_role=req.sub_role, org_id=req.org_id, region_id=req.region_id,
|
||||
name=req.nickname or req.username,
|
||||
)
|
||||
return user
|
||||
|
||||
async def set_user_role(self, actor: dict, user_id: str, role: str, sub_role: str, org_id: str, region_id: str) -> dict:
|
||||
|
||||
Reference in New Issue
Block a user