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:
@@ -0,0 +1,39 @@
|
||||
"""去多身份:drop user_identities
|
||||
|
||||
Revision ID: 0014_drop_user_identities
|
||||
Revises: 0013_opc_cert_park_transfer
|
||||
Create Date: 2026-08-26
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
from alembic import op
|
||||
|
||||
revision = "0014_drop_user_identities"
|
||||
down_revision = "0013_opc_cert_park_transfer"
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
# 账号单一角色(去多身份/多端口):user_identities 不再使用,删除表。
|
||||
op.drop_table("user_identities")
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
# 降级:重建 user_identities(结构由模型决定,这里按原 models 恢复)。
|
||||
import sqlalchemy as sa
|
||||
|
||||
op.create_table(
|
||||
"user_identities",
|
||||
sa.Column("id", sa.String(), primary_key=True),
|
||||
sa.Column("user_id", sa.String(), sa.ForeignKey("users.id", ondelete="CASCADE"), nullable=False),
|
||||
sa.Column("port", sa.String(), default="opc"),
|
||||
sa.Column("role", sa.String(), default="opc_member"),
|
||||
sa.Column("sub_role", sa.String(), nullable=True),
|
||||
sa.Column("name", sa.String(), default=""),
|
||||
sa.Column("org_id", sa.String(), sa.ForeignKey("organizations.id"), nullable=True),
|
||||
sa.Column("region_id", sa.String(), sa.ForeignKey("regions.id"), nullable=True),
|
||||
sa.Column("status", sa.String(), default="active"),
|
||||
sa.Column("created_at", sa.String(), default=""),
|
||||
sa.Column("updated_at", sa.String(), default=""),
|
||||
)
|
||||
Reference in New Issue
Block a user