如何通过basic_auth.ini配置静态用户认证授权及扩展权限参数?
MLflow静态用户创建与权限配置
一、创建静态用户并分配权限
MLflow的基础认证依赖数据库存储用户信息,你需要通过MLflow CLI命令来创建和管理用户:
- 创建用户
使用mlflow users create命令,指定用户名、密码和初始权限:
# 创建只读权限用户 mlflow users create --username reader_user --password reader_pass --permission READ # 创建编辑权限用户(可修改实验、运行) mlflow users create --username editor_user --password editor_pass --permission EDIT # 创建管理员权限用户(可管理用户、权限) mlflow users create --username admin_user --password admin_pass --permission MANAGE
- 修改用户权限
如果需要调整已有用户的权限,用mlflow users update命令:
mlflow users update --username reader_user --permission EDIT
- 查看用户列表与权限
执行以下命令查看所有用户及其权限:
mlflow users list
权限级别说明:
- READ:仅能查看实验、运行和模型,无法修改
- EDIT:可创建、修改、删除实验和运行,管理模型版本
- MANAGE:拥有最高权限,可创建/删除用户、修改所有用户权限
二、关于扩展[groups]或[permissions]配置参数
MLflow官方提供的basic_auth.ini默认不支持直接配置[groups]或[permissions]这类静态分组/权限参数,因为用户和权限数据是存储在你配置的PostgreSQL数据库中的,而非配置文件。
如果需要实现用户分组管理,你需要自定义授权逻辑:
- 自行在数据库中维护用户组表,关联用户与组权限
- 编写自定义的
authorization_function替代默认的mlflow.server.auth:authenticate_request_basic_auth,在函数中实现基于用户组的权限校验逻辑
内容的提问来源于stack exchange,提问作者Kunal Negi
相关产品推荐
相关产品推荐

