2017-02-09 6 views
2

im CLJ-ldap.client.getAbfrage ldap für Gruppen ein Benutzer gehört

mit, wo ich verschiedene Variationen für Benutzer-Abfrage versucht haben, aber nicht die ldap Sprache zu wissen und nichts zu finden gut in der Lage, bei es erklären.

ich versucht habe

"cn=<username> , cn=User, dc=google, dc=co, dc=uk" 

so weit dies nur

zurückgekehrt
"googlesecretq": "25", 
    "authpassword;orclcommonpwd": "<password>", 
    "uid": "<username>", 
    "mail": "<username>@google.co.uk", 
    "dn": "cn=<username>, cn=Users, dc=google, dc=co, dc=uk", 
    "objectclass": [ 
    <objects that mean nothing to me> 
    ], 
    "sn": "<username>", 
    "userpassword": "<password>", 
    "cn": "<username>", 
    "givenname": "<username>" 

so mir jemand sagen, wo die ldap Sprache zu lernen, oder noch besser, was query ich brauche die laufen zu bekommen Gruppen/Rollen für einen bestimmten Benutzer

Antwort

0

Bei LDAP hängt vieles davon ab, welche Schemaobjekte installiert sind, und einige hängen davon ab, welche Entscheidungen von wem das System eingerichtet/konfiguriert wurde. Es gibt keinen einzigen Standard. Zum Beispiel verwendet das LDAP, mit dem ich clj-ldap verwende, cn =, ou = Leute, dc = Beispiel, dc = com und Gruppen sind in cn = Gruppen, dn-exmple, dn-com. Einige der Schemas, wie das Posix- oder das Nis-Schema, haben relativ klare Definitionen, wie Gruppen definiert werden sollen, aber oft definieren die Leute auch ihre eigenen Schema-Objekte. Zu wissen, welche Schemaobjekte die Serverbenutzer verwenden können, kann sicherlich dazu beitragen, mögliche Kandidaten einzuschränken.

Sie müssen entweder mit einem der Admins für den LDAP-Server Ihrer Abfrage sprechen, um herauszufinden, welche Schema-Objekte es hat oder vielleicht ein Werkzeug wie ldapsearch verwenden, um die verschiedenen Container/Bäume zu erkunden. Der Explorationsansatz hat die Einschränkung, dass Ihr Suchbenutzer (für den Sie die Suche durchführen) möglicherweise nicht über ausreichende Zugriffsrechte verfügt, um alle Objekte/Bäume/Container abzufragen.

Die Dokumentation, die mit ldapsearch (verfügbar auf den meisten Linux-Systemen) geliefert wird, ist ziemlich gut zu erklären, wie die LDAP-Suchsyntax funktioniert. Es ist ein wenig "klobig" und scheint zunächst seltsam, aber ist eigentlich ziemlich geradlinig - mit Blick auf die Examples in der ldapsearch Docs und Man-Seiten werden dazu beitragen.

Die openLDAP-Dokumentation hat einige gute Informationen, dachte, dass sie nicht so gut präsentiert wird und dass es schwer ist, Dinge zu finden. Beachten Sie, dass es verschiedene LDAP-Typen mit unterschiedlichen Funktionen und Konventionen gibt. Zu wissen, mit welchem ​​Typ Sie arbeiten, könnte ebenfalls hilfreich sein.

+0

Danke Tim x, ich denke, unsere ist Benutzer und dann haben die Gruppen die Benutzer in ihnen aufgeführt. Ich denke, ich müsste alle Gruppen abfragen, um herauszufinden, in welchen Gruppen sich ein Benutzer befindet, klingt das richtig? – f1wade

+0

Abhängig von Ihrer Struktur können Sie wahrscheinlich alle Mitglieder einer bestimmten Gruppe oder Abfrage abfragen, um zu sehen, in welcher Gruppe jemand Mitglied ist. Die ldapsearch-Syntax ist die, die Sie für clj-ldap verwenden. Daher sollten Sie in der Lage sein, das grundlegende Format Ihrer Suche mit Hilfe von ldapsearch zu berechnen und dieses dann in clojure zu übersetzen. Sie müssen jedoch sicher wissen, welche Struktur die Abfrage formatieren soll. –

Verwandte Themen