Nifi LDAP 授权 - 通过通配符搜索过滤器中的多个组

kbr*_*nts 5 ldap active-directory apache-nifi

我正在尝试通过 LDAP 对 Nifi 授权者使用搜索过滤器。问题是通常的搜索过滤器语法似乎不起作用。

我目前有 nifi 与我的一个小组一起工作,所以让 LDAP 工作不是问题。我还可以通过使用两个组的完整路径来使其工作,但我想使用通配符。

所以我的广告组如下

prod.xxxx.be
 |--PROD
      |--Groups TIM application entitlements
           |--(A) Nifi - Admin
           |--(A) Nifi - Operator
           |--(A) Nifi - User
Run Code Online (Sandbox Code Playgroud)

当使用以下内容时,它可以工作,并且来自两个组的用户都会填充到 Nifi UI 的用户列表中;

<property name="User Search Base">OU=PROD, DC=prod, DC=xxxx, DC=be</property>
<property name="User Object Class">person</property>
<property name="User Search Scope">SUBTREE</property>
<property name="User Search Filter">(&(memberof=CN=(A) Nifi - Admin, OU=Groups TIM Application Entitlements, OU=PROD, DC=prod, DC=xxxx, DC=be)(memberof=CN=(A) Nifi - User, OU=Groups TIM Application Entitlements, OU=PROD, DC=prod, DC=xxxx, DC=be))</property>
<property name="User Identity Attribute">CN</property>
<property name="User Group Name Attribute"></property>
<property name="User Group Name Attribute - Referenced Group Attribute"></property>
Run Code Online (Sandbox Code Playgroud)

但由于可能会添加更多组,因此看起来不太清晰。因此,使用通配符会很棒。

我尝试了在https://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx找到的许多组合,但似乎没有一个适用于 Nifi。

例子;

(&(objectCategory=group)(cn=(A) Nifi*))
Run Code Online (Sandbox Code Playgroud)

我什至试图逃避特殊字符;

(&(objectCategory=group)(cn=\28A\29 Nifi*))
Run Code Online (Sandbox Code Playgroud)

或者

(&amp;(objectCategory=group)(cn=\28A\29 Nifi*))
Run Code Online (Sandbox Code Playgroud)

由于授权者的配置文件是一个 XML 文件,但运气不佳。

任何建议将不胜感激。

最好的问候,克里斯托夫

小智 0

我们使用 ambari 并需要将对象澄清为模板中的字符数据: