| 123456789101112131415161718192021222324252627282930313233 |
- """角色密码(契约1.53 密码即角色)。
- Revision ID: 0044_role_password
- Revises: 0043_password_reset_request
- Create Date: 2026-09-23
- 变更要点(Python 版已废弃不做功能实现,仅保持迁移链同步):
- 1. sys_user_role 加 password_hash 列:N 个密码对应 N 个角色一一对应,
- 登录时输入哪个角色的密码即以该角色直接进入;
- 2. NULL=该角色使用用户级密码(挂 ≥2 角色时恰一个角色可为 NULL);
- 存量数据不搬迁,全部 NULL=过渡态按 1.46 行为回退。
- """
- from __future__ import annotations
- from collections.abc import Sequence
- import sqlalchemy as sa
- from alembic import op
- revision: str = "0044_role_password"
- down_revision: str | None = "0043_password_reset_request"
- branch_labels: str | Sequence[str] | None = None
- depends_on: str | Sequence[str] | None = None
- def upgrade() -> None:
- op.add_column(
- "sys_user_role",
- sa.Column("password_hash", sa.String(length=255), nullable=True))
- def downgrade() -> None:
- op.drop_column("sys_user_role", "password_hash")
|