abh*_*ani 6 ldap rbac airflow flask-appbuilder
我正在尝试使用 RBAC 功能启用 Airflow LDAP 身份验证,并进行了以下更改:
rbac = true和删除authentication = TrueAIRFLOW_HOME目录下 创建 webserver_config.py 文件webserver_config.py 文件包含:
import os
from airflow import configuration as conf
from flask_appbuilder.security.manager import AUTH_LDAP
basedir = os.path.abspath(os.path.dirname(__file__))
SQLALCHEMY_DATABASE_URI = conf.get(‘core’, ‘SQL_ALCHEMY_CONN’)
CSRF_ENABLED = True
AUTH_TYPE = AUTH_LDAP
AUTH_ROLE_ADMIN = ‘Admin’
AUTH_USER_REGISTRATION = True
AUTH_USER_REGISTRATION_ROLE = “Admin”
AUTH_LDAP_SERVER = ‘ldaps://ldap.xxx.yyy.net:636‘
AUTH_LDAP_SEARCH = “ou=Users,o=corp”
AUTH_LDAP_BIND_USER = ‘cn=ldap-proxy,ou=Users,o=corp’
AUTH_LDAP_BIND_PASSWORD = ‘YOUR_PASSWORD’
AUTH_LDAP_UID_FIELD = ‘uid’
AUTH_LDAP_USE_TLS = False
AUTH_LDAP_ALLOW_SELF_SIGNED = False
AUTH_LDAP_TLS_CACERTFILE = ‘/etc/ssl/certs/ldap.crt’
Run Code Online (Sandbox Code Playgroud)
完成上述更改后,我们就可以使用 LDAP 凭据登录 Airflow。但是问题是所有的用户Admin在自注册后都有这个角色,因为我们在AUTH_USER_REGISTRATION_ROLE = “Admin”.
我们如何AUTH_USER_REGISTRATION_ROLE根据用户 LDAP 角色动态分配?我们有不同的用户,如测试人员、开发人员和操作用户,但使用上述 web 服务器配置文件,所有用户都Admin通过 manager.py 文件下的 Flask_appbuilder.security自动分配角色。
有什么方法可以创建自定义管理器文件,登录时引用此自定义文件而不是 Flask_appbuilder.security.manager.py 文件。
| 归档时间: |
|
| 查看次数: |
1686 次 |
| 最近记录: |