Active directory 气流AD/LDAP超级用户过滤器与数据探查器过滤器

Active directory 气流AD/LDAP超级用户过滤器与数据探查器过滤器,active-directory,ldap,airflow,Active Directory,Ldap,Airflow,我正在配置对Airflow的管理访问权限,但我对超级用户过滤器和数据探查器过滤器之间的区别感到困惑 如果我没有设置这两个值中的任何一个,那么我的AD/LDAP上的每个人都可以登录到Airflow并查看/使用所有管理功能。这是正在工作的预期默认行为 如果我只设置了超级用户过滤器,管理员可以查看管理员按钮,但只显示池、配置、用户、连接和XCOM功能(不是变量功能) 如果我只设置了数据\u探查器\u过滤器,则管理员可以查看管理按钮,但仅显示变量功能 如果我将超级用户过滤器和数据探查器过滤器(设置为相同

我正在配置对Airflow的管理访问权限,但我对超级用户过滤器和数据探查器过滤器之间的区别感到困惑

  • 如果我没有设置这两个值中的任何一个,那么我的AD/LDAP上的每个人都可以登录到Airflow并查看/使用所有管理功能。这是正在工作的预期默认行为
  • 如果我只设置了超级用户过滤器,管理员可以查看管理员按钮,但只显示池、配置、用户、连接和XCOM功能(不是变量功能)
  • 如果我只设置了数据\u探查器\u过滤器,则管理员可以查看管理按钮,但仅显示变量功能
  • 如果我将超级用户过滤器和数据探查器过滤器(设置为相同的管理组值)都设置为 例如。,
    superuser\u filter=memberOf=CN=ADMINTEAM,OU=svccts,DC=us,DC=ae,DC=com
    data_profiler_filter=memberOf=CN=ADMINTEAM,OU=SvcAccts,DC=us,DC=ae,DC=com
    ),那么我的AD/LDAP中没有人(包括管理员)能够查看Admin按钮;我想知道这是否是因为这两个过滤器的值需要两个不同的组,而不是两个都需要一个组值
  • 有人能帮我区分这两个值以及它们应该如何设置吗?此外,为了扩展我在上面第四条中的评论,对这两个过滤器使用了两个不同的组值(气流超级用户气流数据探查器),这是否意味着不能对这两个过滤器使用相同的组值?例如,我有一个Airflow Admin组(ADMINTEAM),如果可能的话,我希望能够将其用于两个值,但这似乎不起作用,它似乎需要两个不同的组值

    aiffort.cfg LDAP配置

    [ldap]
    # set a connection without encryption: uri = ldap://<your.ldap.server>:<port>
    uri = ldap://123.456.789:123
    user_filter = objectclass=*
    # in case of Active Directory you would use: user_name_attr = sAMAccountName
    user_name_attr = sAMAccountName
    # group_member_attr should be set accordingly with *_filter
    # eg :
    #     group_member_attr = groupMembership
    #     superuser_filter = groupMembership=CN=airflow-super-users...
    
    superuser_filter = memberOf=CN=ADMINTEAM,OU=foo,DC=us,DC=bar,DC=com
    data_profiler_filter = memberOf=CN=ADMINTEAM,OU=foo,DC=us,DC=bar,DC=com
    
    group_member_attr = member
    group_name_attr = CN
    group_filter = objectclass=group
    bind_user = CN=blah,OU=foo,DC=us,DC=bar,DC=com
    bind_password = yahoo
    basedn = DC=us,DC=bar,DC=com
    # Set search_scope to one of them:  BASE, LEVEL , SUBTREE
    # Set search_scope to SUBTREE if using Active Directory, and not specifying an Organizational Unit
    search_scope = SUBTREE
    
    [ldap]
    #设置不加密的连接:uri=ldap://:
    uri=ldap://123.456.789:123
    用户\过滤器=对象类=*
    #对于Active Directory,您将使用:user\u name\u attr=sAMAccountName
    user\u name\u attr=sAMAccountName
    #应使用*过滤器相应地设置组成员属性
    #例如:
    #组\成员\属性=组成员
    #超级用户\u筛选器=组成员资格=CN=超级用户。。。
    超级用户\u filter=memberOf=CN=ADMINTEAM,OU=foo,DC=us,DC=bar,DC=com
    数据\u探查器\u过滤器=memberOf=CN=ADMINTEAM,OU=foo,DC=us,DC=bar,DC=com
    组成员属性=成员
    组名称属性=CN
    组\过滤器=对象类=组
    bind_user=CN=blah,OU=foo,DC=us,DC=bar,DC=com
    bind_password=yahoo
    basedn=DC=us,DC=bar,DC=com
    #将搜索范围设置为其中一个:基础、级别、子树
    #如果使用Active Directory且未指定组织单位,请将搜索范围设置为子树
    搜索范围=子树
    
    说到第4点,我认为是第2点和第3点的结果。我认为您可以对两个过滤器使用相同的组,但到目前为止,这有点超出了我对LDAP集成的了解。你能试着把这个发到邮件列表上(可以链接回这个问题),看看是否有人能提供更具体的帮助。你能让这个工作正常吗?