简单身份验证管理器¶
注意
简单身份验证管理器仅用于开发和测试。如果您在生产环境中使用它,请确保通过其他方式控制访问。
简单身份验证管理器是 Airflow 3 默认自带的身份验证管理器。顾名思义,简单身份验证管理器的逻辑和实现都非常简单。
管理用户¶
用户通过 Airflow 配置进行管理。示例:
[core]
simple_auth_manager_users = "bob:admin,peter:viewer"
用户列表用逗号分隔,每个用户是一个用户名/角色对,用冒号分隔。每个用户需要两部分信息:
username. 用户的用户名
role. 与用户关联的角色。有关这些角色的更多信息,请参阅下一节。
在上面的示例中,定义了两个用户:
bob 的角色是 admin
peter 的角色是 viewer
每个用户的密码都是自动生成的,并打印在 Webserver 日志中。生成后,这些密码会保存在 core.simple_auth_manager_passwords_file
配置的文件中。默认情况下,此文件是 $AIRFLOW_HOME/simple_auth_manager_passwords.json.generated
,如果需要,您也可以直接在该文件中读取和更新它们。
注意
使用 Breeze 时,预定义了两个用户:admin
和 viewer
(密码与用户名相同)。admin
拥有所有权限。viewer
拥有只读权限。
管理角色和权限¶
简单身份验证管理器没有管理角色和权限的选项。它们作为简单身份验证管理器实现的一部分定义,无法修改。以下是简单身份验证管理器中定义的角色列表。这些角色可以与用户关联。
viewer. 对 dags、assets 和 pools 具有只读权限
user. 具有 viewer 权限以及对 dags 的所有权限(编辑、创建、删除)
op. 具有 user 权限以及对 pools、assets、config、connections 和 variables 的所有权限
admin. 所有权限
可选功能¶
禁用身份验证并允许所有人作为管理员¶
此选项允许您禁用身份验证,并允许所有人作为管理员访问。因此,任何访问 Airflow UI 的人都将自动以具有所有权限的管理员身份登录。
您可以通过配置启用此功能。示例:
[core]
simple_auth_manager_all_admins = "True"