如何在 Airflow 中设置 LDAP (RBAC)?
How to setup LDAP (RBAC) in Airflow?
我目前遇到的问题是 LDAP 设置似乎不适用于 Airflow。我当前的代码没有生成登录屏幕,docker 容器中也没有日志显示它正在尝试连接到 LDAP 服务器。我试图按照这些教程进行操作,但它们似乎什么也没做(即未使用 webserver_config.py
)TutorialOne TutorialTwo
如能提供有关连接工作原理的任何信息,我们将不胜感激!
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_USER_REGISTRATION_ROLE = "Viewer"
AUTH_LDAP_SERVER = 'ldapserveraddressherebutIwon'tshowyousorry'
AUTH_LDAP_SEARCH = "DC=ms,DC=ds,DC=uhc,DC=com"
AUTH_LDAP_BIND_USER = 'CN=Users,DC=ms,DC=ds,DC=uhc,DC=com'
AUTH_LDAP_BIND_PASSWORD ="*******************"
AUTH_LDAP_UID_FIELD = 'sAMAccountName'
AUTH_LDAP_USE_TLS = False
AUTH_LDAP_ALLOW_SELF_SIGNED = False
# Get relative path for CA certificate file
script_dir = os.path.dirname(__file__)
AUTH_LDAP_TLS_CACERTFILE = script_dir + "ca.cer"
我已经从 airflow.cfg
中删除了 authenticate = True
和 auth_backend = airflow.contrib.auth.backends.ldap_auth
,我的 webserver_config.py
在同一个文件夹中使用。
这可以通过airflow.cfg
来实现。
请阅读下面的 LDAP 部分并告诉我。
我目前遇到的问题是 LDAP 设置似乎不适用于 Airflow。我当前的代码没有生成登录屏幕,docker 容器中也没有日志显示它正在尝试连接到 LDAP 服务器。我试图按照这些教程进行操作,但它们似乎什么也没做(即未使用 webserver_config.py
)TutorialOne TutorialTwo
如能提供有关连接工作原理的任何信息,我们将不胜感激!
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_USER_REGISTRATION_ROLE = "Viewer"
AUTH_LDAP_SERVER = 'ldapserveraddressherebutIwon'tshowyousorry'
AUTH_LDAP_SEARCH = "DC=ms,DC=ds,DC=uhc,DC=com"
AUTH_LDAP_BIND_USER = 'CN=Users,DC=ms,DC=ds,DC=uhc,DC=com'
AUTH_LDAP_BIND_PASSWORD ="*******************"
AUTH_LDAP_UID_FIELD = 'sAMAccountName'
AUTH_LDAP_USE_TLS = False
AUTH_LDAP_ALLOW_SELF_SIGNED = False
# Get relative path for CA certificate file
script_dir = os.path.dirname(__file__)
AUTH_LDAP_TLS_CACERTFILE = script_dir + "ca.cer"
我已经从 airflow.cfg
中删除了 authenticate = True
和 auth_backend = airflow.contrib.auth.backends.ldap_auth
,我的 webserver_config.py
在同一个文件夹中使用。
这可以通过airflow.cfg
来实现。
请阅读下面的 LDAP 部分并告诉我。