2

我已经让 ldap 身份验证在气流中工作,但它允许我们目录中的任何用户登录。虽然它只显示airflow-admin AD 组成员的管理员权限,但我希望不是airflow-admin 或airflow-profiler 组成员的用户被拒绝访问,但事实并非如此。这是我的配置:

[webserver]
authenticate = True
auth_backend = airflow.contrib.auth.backends.ldap_auth

[ldap]
uri = ldaps://ldaps.mydomain.com:636
user_filter = objectClass=person
user_name_attr = sAMAccountName
group_member_attr = memberOf
superuser_filter = memberOf=CN=airflow-admin,OU=Users,DC=mydomain,DC=com
data_profiler_filter = memberOf=CN=airflow-profiler,OU=Users,DC=mydomain,DC=com
bind_user = cn=ldapadmin,ou=Admins,dc=mydomain,dc=com
bind_password = ******
basedn = dc=mydomain,dc=com
cacert = /usr/local/share/ca-certificates/mydomain.crt
search_scope = SUBTREE

我看到其他几个没有解决方案的类似帖子,我开始怀疑这是否有效。这是 ldap 上气流文档部分的链接。 https://airflow.apache.org/security.html?#ldap

4

1 回答 1

5

您是否尝试通过 user_filter 过滤掉它们?

以下内容应仅允许上述两个组之一中的用户访问。不幸的是,我没有 Airflow 来测试和验证这一点。

user_filter = |(memberOf=CN=airflow-admin,OU=Users,DC=mydomain,DC=com)(memberOf=CN=airflow-profiler,OU=Users,DC=mydomain,DC=com)
于 2018-12-04T17:27:05.357 回答