ejabberd: ldap_filter im LDAP Active Directory

ejabberd: ldap_filter im LDAP Active Directory

TL;DR: Wie richte ich ejabberd ein, um nur bestimmte Active Directory-Gruppenmitglieder zuzulassen?

Hallo,

Nachdem ich erfolgreich einen an unser AD angeschlossenen Ejabberd-Dienst eingerichtet habe, möchte ich die zulässigen Benutzer auf eine bestimmte Gruppe beschränken.

Mein Arbeits-Setup ist:

auth_method: [ldap]
ldap_servers:
  - 1.2.3.4
  - 1.2.3.5
ldap_uids:
  mail: "%[email protected]"
ldap_base: "OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"
ldap_rootdn: "CN=someone,CN=Users,DC=domain,DC=lan"
ldap_password: "secret"

Dies funktioniert so, wie es ist, einwandfrei.


Die Benutzer werden gespeichert in:

"OU=Utilisateurs,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"

aber die Gruppen sind in einer anderen Organisationseinheit gespeichert:

"OU=Securite,OU=Groupes,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"

Ich möchte einen Filter hinzufügen, um nur Benutzer zuzulassen, die zu einer Gruppe gehören, die in einer anderen Organisationseinheit definiert ist.

Wenn Sie versuchen, den Filter unten hinzuzufügen,nullBenutzer in der zulässigen Gruppe können eine Verbindung herstellen:

ldap_filter:
  (&(objectCategory=group)(CN=GG_XMPP_USERS,OU=Securite,OU=Groupes,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan))

Ohne Erfolg habe ich auch eine Syntax wie diese ausprobiert: (&(objectclass=group)(|(cn=admingroup)(cn=group1)(cn=group2)))

Im Active Directory haben die Benutzerobjekte kein „memberOf“-Attribut, das abgefragt werden könnte.

Was ist also der richtige Weg?

verwandte Informationen