LDAP Integration für Rocket.Chat, Problem mit User Search
Moin zusammen,
ich bin gerade dabei Rocket.Chat mit einem OpenLDAP Server zu verbinden.
Grundsätzlich klappt das auch, nur bekomme ich es nicht hin das ganze zu Filtern, so dass sich nur Mitglieder einer bestimmten Gruppe anmelden dürfen.
Sobald ich den Filter aktiviere kann sich gar kein User anmelden.
Egal ob er in der Gruppe ist oder nicht.
Synchronisiert werden die LDAP User aber problemlos mit Rocket.Chat
Leider ist die Doku von Rocket.Chat zu dem Punkt User Search (Group Validation) so gut wie nicht vorhanden und über Google auch nicht wirklich was zu finden.
Der Vollständigkeit halber hier meine vollständigen LDAP Einstellungen in Rocket.Chat:
Zum Filtern wer sich einloggen darf gibt es dann noch "User Search" und "User Search (Group Validation)".
Da OpenLDAP kein "memberOf" versteht heißt es hier für OpenLDAP soll man statt der "User Search" die "User Search (Group Validation)" nutzen.
Hier die Einstellungen zu UserSearch in denen ich wohl einen Fehler habe:
In Klammern stehen zum Teil die Vorschläge von Rocket.Chat
Der Rocketchat Log gibt bei einem Anmeldeversuch folgenden Fehler aus:
Ich weiß nur leider nicht an welcher Stelle er hier ein Objekt nicht finden kann. Ob es die Gruppe ist oder der User.
Bzw. wo er Probleme mit dem Distinguished Name hat.
ich bin gerade dabei Rocket.Chat mit einem OpenLDAP Server zu verbinden.
Grundsätzlich klappt das auch, nur bekomme ich es nicht hin das ganze zu Filtern, so dass sich nur Mitglieder einer bestimmten Gruppe anmelden dürfen.
Sobald ich den Filter aktiviere kann sich gar kein User anmelden.
Egal ob er in der Gruppe ist oder nicht.
Synchronisiert werden die LDAP User aber problemlos mit Rocket.Chat
Leider ist die Doku von Rocket.Chat zu dem Punkt User Search (Group Validation) so gut wie nicht vorhanden und über Google auch nicht wirklich was zu finden.
Der Vollständigkeit halber hier meine vollständigen LDAP Einstellungen in Rocket.Chat:
**LDAP**
Enable: True
Login Fallback: True
Find user after login: True
Host: ldap.firma.de
Port: 636
Encryption: SSL/LDAPS
CA Cert:
Reject Unauthorized: True
Base DN: DC="ldap",DC="firma",DC="de"
**Authentication**
Enable: True
User DN: cn=admin,dc=ldap,dc=firma,dc=de (wird später noch auf einen anderen User geändert)
Passwort: ***************
**Sync/Import**
Username Field: uid
Unique Identifier Field: uidNumber
Default Domain: firma.de
Merge Existing Users: true
Sync User Data: true
User Data Field Map: {"cn":"name", "mail":"email"}
Sync User Avatar: true
Background Sync: true
Background Sync Interval: Every 24 hours
Background Sync Import New Users: true
Background Sync Update Existing Users: true
Zum Filtern wer sich einloggen darf gibt es dann noch "User Search" und "User Search (Group Validation)".
Da OpenLDAP kein "memberOf" versteht heißt es hier für OpenLDAP soll man statt der "User Search" die "User Search (Group Validation)" nutzen.
Hier die Einstellungen zu UserSearch in denen ich wohl einen Fehler habe:
In Klammern stehen zum Teil die Vorschläge von Rocket.Chat
Enable LDAP User Group Filter: true
Group ObjectClass: posixGroup
(Rocketchat schreibt hier: als Beispielwert: "E.g. OpenLDAP:groupOfUniqueNames", jedoch sagt mir hier mein LDAP Browser, dass die Objectclass "posixGroup" lautet.
Group ID Attribute: cn
(E.g. *OpenLDAP:*cn)
Group Member Attribute: memberUid
(Auch hier eine Abweichung vom Rocket.Chat vorschlag für OpenLDAP: "E.g. *OpenLDAP:*uniqueMember", LDAP Browser sagt mir aber die Attribute heißen memberUid)
Group Member Format: uid=#{username},ou=users,dc=ldap,dc=firma,dc=de
(E.g. *OpenLDAP:*uid=#{username},ou=users,o=Company,c=com)
Group name: rocketchat
Der Rocketchat Log gibt bei einem Anmeldeversuch folgenden Fehler aus:
I20190724-08:12:20.398(0) server.js:207 LDAPHandler ➔ error { NoSuchObjectError: No Such Object at messageCallback (/app/bundle/programs/server/npm/node_modules/ldapjs/lib/client/client.js:1419:45) at Parser.onMessage (/app/bundle/programs/server/npm/node_modules/ldapjs/lib/client/client.js:1089:14) at emitOne (events.js:116:13) at Parser.emit (events.js:211:7) at Parser.write (/app/bundle/programs/server/npm/node_modules/ldapjs/lib/messages/parser.js:111:8) at TLSSocket.onData (/app/bundle/programs/server/npm/node_modules/ldapjs/lib/client/client.js:1076:22) at emitOne (events.js:116:13) at TLSSocket.emit (events.js:211:7) at addChunk (_stream_readable.js:263:12) at readableAddChunk (_stream_readable.js:250:11) at TLSSocket.Readable.push (_stream_readable.js:208:10) at TLSWrap.onread (net.js:597:20) lde_message: 'No Such Object', lde_dn: null }
Ich weiß nur leider nicht an welcher Stelle er hier ein Objekt nicht finden kann. Ob es die Gruppe ist oder der User.
Bzw. wo er Probleme mit dem Distinguished Name hat.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 476922
Url: https://administrator.de/forum/ldap-integration-fuer-rocket-chat-problem-mit-user-search-476922.html
Ausgedruckt am: 25.12.2024 um 08:12 Uhr
4 Kommentare
Neuester Kommentar
Moin,
folgenden Beitrag LDAP Group Member Format habe ich im Community Forum von Rocket gefunden. Ist meiner Meinung nach, das selbe Problem wie bei dir.
Gruß,
Dani
folgenden Beitrag LDAP Group Member Format habe ich im Community Forum von Rocket gefunden. Ist meiner Meinung nach, das selbe Problem wie bei dir.
Gruß,
Dani
Moin,
Gruß,
Dani
Ich denke da geht es aber um was anderes.
Hmm, folgender Satz " Currently I’m stuck at the LDAP Group Member Format setting as it should look like the following:" klingt doch nach der Übersetzung nach deinem Problem. Es geht meiner Meinung nach darum, wie die zu prüfende Gruppe "formatiert" werden muss.Gruß,
Dani