Skip to content

快速登录 是否存在安全隐患 #381

@aaron0713

Description

@aaron0713

使用了 2.0.0 最新稳定版。
发现了多了一个快速登陆的功能,所有用户都可以免密,免验证码直接登陆。并且没有找到 可以关闭 的选项。

API接口 /system/auth/auto-login/users 是无需权限的,可以获取系统中所有用户信息

    @classmethod
    async def get_auto_login_users_service(cls, db: AsyncSession) -> list[AutoLoginUserSchema]:
        """
        获取免登录用户列表

        参数:
        - db (AsyncSession): 数据库会话对象

        返回:
        - list[AutoLoginUserSchema]: 用户列表
        """
        from sqlalchemy import select

        from app.api.v1.module_system.user.model import UserModel

        # 查询所有启用的用户
        stmt = select(UserModel).where(UserModel.status == "0").order_by(UserModel.id)
        result = await db.execute(stmt)
        users = result.scalars().all()

        return [
            AutoLoginUserSchema(
                id=user.id,
                username=user.username,
                name=user.name,
                avatar=user.avatar,
            )
            for user in users
        ]

是否会造成信息泄漏?

是否有配置文件,可以在生产环境:

  • 关闭快速登陆
  • 禁用快速登陆相关接口
  • 管理可快速登陆的用户列表

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions