如何在 Airflow 中设置 LDAP (RBAC)?

2024-06-24

我当前遇到的问题是 LDAP 设置似乎不适用于 Airflow。我当前的代码不会生成登录屏幕,docker 容器中也没有日志显示它正在尝试连接到 LDAP 服务器。我试图遵循这些教程,但它们似乎什么也没做(即webserver_config.py没有被使用)教程一 https://itsecureadmin.com/2019/02/apache-airflow-1-10-2-active-directory-authentication-via-ldaps/ 教程二 https://guptakumartanuj.wordpress.com/2019/11/14/airflow-ui-authentication-through-ldap-server/

任何有关连接如何工作的信息将不胜感激!

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 =  "***"
AUTH_LDAP_BIND_USER = '***'
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"

我已经删除了authenticate = True and auth_backend = airflow.contrib.auth.backends.ldap_auth from airflow.cfg and my webserver_config.py位于同一文件夹中以供使用。


这可以通过以下方式实现airflow.cfg.

请阅读下面的 LDAP 部分并告诉我。

https://airflow.apache.org/docs/stable/security.html https://airflow.apache.org/docs/stable/security.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Airflow 中设置 LDAP (RBAC)? 的相关文章

  • AD、ADFS 与 LDAP:像我 5 岁一样解释一下

    我没有与 Microsoft 合作 但我很难从概念上理解 AD ADFS 和 LDAP 如何协同工作 假设我有一个需要身份提供者的应用程序 AD 和 LDAP 如何发挥作用 我的谷歌搜索还没有为我提供这些概念的清晰总结 但如果有存在的资源
  • 使用DockerOperator时如何同时使用xcom_push=True和auto_remove=True?

    Problem 跑步时DockerOperator with xcom push True xcom all True and auto remove True 任务会引发错误 就好像容器在读取其内容之前被删除一样STDOUT Exampl
  • Spring 的 LdapTemplate 搜索:PartialResultException:未处理的延续引用;剩余名称 '/'

    我通过 LDAP 为某个使用 spring 制作的应用程序添加用户 虽然这适用于大多数情况 但在某些情况下 它不起作用 检索我使用的用户 public class LdapUserServiceImpl implements ILdapUs
  • 使用通配符的 Active Directory 查询性能较差

    我正在用 C 编写一个方法 该方法应该查询 Active Directory 并查找具有以下格式的显示名称的所有用户和组 显示名称 带有前导和尾随通配符的通配符搜索 该方法将用于自动完成字段 问题是我编写的方法的性能非常差 尝试查询 AD
  • 嵌入式 Jetty - 以编程方式添加基于表单的身份验证

    有没有一种方法可以按如下方式以编程方式添加基于表单的身份验证 我用的是我自己的LdapLoginModule 最初我使用基本身份验证并且工作正常 但现在我想在登录页面上进行更多控制 例如显示徽标等 有没有好的样品 我正在使用嵌入式 jett
  • Kubernetes 上的气流:Errno 13 - 权限被拒绝:'/opt/airflow/logs/scheduler

    我在 Kubernetes 上运行 Airflow稳定舵图 https github com helm charts tree master stable airflow 我在 AWS 环境中运行它 无论是否安装任何用于日志存储的外部卷 都
  • 验证 LDAPS 连接的自签名证书

    我想从 Linux Linux 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 客户端到 Windows 2012 服务器建立安全的 ldap 连接 ldaps 以更改活动中的用户密
  • 带子任务的 Airflow 并行任务

    我需要在 Apache Airflow 上运行以下图表 但我遇到了并行步骤的问题 因为它们有多个子步骤 gt task 1a gt tast 1b gt task 4a gt tast 4b Start gt task 2a gt tast
  • 从 php 对 Active Directory/ISA 进行身份验证 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个复杂的问题 而且由于我真的不知道从哪里开始而加剧 在过去的几年里 我开发了许多基于 php Web 的系统 当我构建它们时 我
  • 在单元测试中运行 Airflow 1.9 的测试 Dag

    我已经实现了运行单个 dag 的测试用例 但它似乎在 1 9 中不起作用 可能是由于气流 1 8 中引入了更严格的池 我正在尝试运行以下测试用例 from airflow import DAG from airflow operators
  • 如何在Airflow中的PythonOperator的python_callable中提供异步函数?

    我有正在执行的任务 但这些任务通常是异步的 我正在尝试使用 Airflow 运行管道 但它给了我错误 类型错误 无法腌制协程对象 由于这些函数是异步的 我想将它们包装在 asyncio run 中 但仍然不起作用 class Top asy
  • LDAP 过滤器用于区分名称

    我使用以下代码成功查询 Active Directory 中的用户 filter objectCategory person samaccountname someusername fields array samaccountname m
  • 如何使用AirFlow运行python文件的文件夹?

    我在 python 文件的文件夹中有一系列 Python 任务 file1 py file2 py 我阅读了 Airflow 文档 但我不知道如何在 DAG 中指定 python 文件的文件夹和文件名 我想执行这些 python 文件 不是
  • 在哪里可以找到 Airflows 电子邮件日志?

    我正在 Kubernetes 中部署的 Airflow 实例中设置 STMP 电子邮件配置中的 Airflows 构建 我已经能够从电子邮件服务器看到日志 表明我已成功登录 但当我的 DAG 成功时我没有收到电子邮件 我有 email on
  • 如何使用 JNDI 和 Digest-MD5 对 LDAP 进行身份验证

    我正在尝试使用 DIGEST MD5 加密对 LDAP 服务器进行身份验证 使用简单加密时 它工作得很好 但由于显而易见的原因 我无法通过网络以纯文本形式发送密码 奇怪的是 在使用 Softerra LDAP 浏览器时 我可以使用 Dige
  • 在 Apache Airflow 中实施 Postgres Sql

    我在 Ubuntu 版本 18 04 3 服务器上实现了 Apache Airflow 当我设置它时 我使用了 sql lite 通用数据库 这使用了顺序执行器 我这样做只是为了玩玩并习惯这个系统 现在我正在尝试使用本地执行器 并且需要将我
  • 即使从 ca 目录删除 CA 后,starttls 仍成功

    我无法验证我的软件的正确行为 以下是我为验证操作是否正确而执行的步骤 我有使用 openldap 库并对 ldap 服务器执行启动 tls 的示例代码 我第一次设置了 ca cert 目录和 tlx 上下文的全局选项 之后 我对服务器执行了
  • 使用 Airflow 中的另一个 dag 触发外部 dag

    有调用主 dag 中不同 dags 的任务列表 我正在使用 TriggerDagrunoperator 来完成此操作 但面临的问题很少 TriggerDagrunoperator 不会等待外部 dag 完成 它会触发下一个任务 我希望等到完
  • 如何在 Airflow 上跳过任务?

    我想了解 Airflow 是否支持跳过 DAG 中的任务以进行临时执行 假设我的 DAG 图如下所示 任务1 gt 任务2 gt 任务3 gt 任务4 我想从任务 3 手动启动我的 DAG 最好的方法是什么 我读过关于ShortCircui
  • 通过 SSH 隧道访问 LDAP

    我通过 SSH 根访问 访问了客户办公室网络内的一台机器 我正在我的计算机上编写一个需要集成到 LDAP 的 PHP 应用程序 LDAP 服务器位于我客户网络的另一台服务器中 并且not可以从外部访问 但是我可以通过可以通过 SSH 连接的

随机推荐