Autor Thema: LDAP-Prüfung auf Mitgliedschaft in Gruppe per "dominoAccessGroups"  (Gelesen 5880 mal)

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo allerseits,

Ich habe folgendes Problem: Ich möchte die Anmeldung an ein externes System (Confluence Wiki) per LDAP-Authentifikation lösen. Was soweit auch funktioniert. Das Problem, daß ich dort keine leere Suchbasis konfigurieren kann, läßt sich mit dem notes.ini-Parameter LDAPPre55Outlook=1 (und Angabe von C=DE) lösen. Allerdings würde ich auch gern die Berechtigung zum Zugriff auf eine bestimmte Gruppe von Usern in meinem Domino Directory begrenzen. Hierzu würde ich erwarten, daß ich den Suchfilter
Code
(objectClass=Person)
einfach nur entsprechend erweitern muß:
Code
(&(objectClass=Person)(dominoAccessGroups=CN=WikiUsers))
Funktioniert aber leider nicht - das liefert keine Treffer zurück. Kann ich auch z.B. mit dem Softerra LDAP Browser und LDAPDebug=1 auf dem Server nachvollziehen. Das Attribut dominoAccessGroups wird mir bei einem User zwar richtig angezeigt, aber ich kann es auf diesem Wege nicht auswerten.

Gibt es dazu irgendeinen Workaround oder einen Knackpunkt, der mir noch fehlt? Oder ist es schlicht nicht möglich, über Domino-LDAP aus einem Domino-Directory mit nur einer LDAP-Abfrage die Mitgliedschaft in einer Gruppe abzufragen (in dieser Form - ich kann mir zwar natürlich alle Mitglieder einer Gruppe anzeigen lassen, aber das nutzt mir für die Authentifzierungs-Konfiguration von Confluence ja nix)?

Fände ich etwas traurig, aber mein bisheriges Googlen und Ausprobieren läßt eigentlich nur diesen Schluß zu.

@Tode: Wie hast du dein Problem damals (http://atnotes.de/index.php?topic=50145.0) gelöst?

Mein Workaround wird dann vermutlich ein zusätzliches Feld im Personendokument sein, auf daß ich abprüfe. Mag ich zwar nicht so gerne machen, aber mir bleibt ja kaum eine Wahl..

Hat zwei Jahre nach Tode's erster Anfrage da vielleicht mittlerweile jemand eine Idee dazu?

Ciao
Sascha

(Edit: Wird wohl ein Admin gewesen sein, der der Meinung war, ich solle hier besser mal ein neues Thema für anfangen und den Eintrag in nen neuen Thread gehängt hat? Hab meinen Text entsprechend darauf angepaßt).
« Letzte Änderung: 03.07.12 - 16:24:39 von BibbernderBiber »

Offline stoeps

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 831
  • Geschlecht: Männlich
  • It's your life, so live it your way.
    • Stoeps.de
Hi,

Code
(&(objectClass=Person)(dominoAccessGroups=CN=WikiUsers))
Funktioniert aber leider nicht - das liefert keine Treffer zurück.

Deine Gruppe ist doch sicher nicht objectClass=Person, oder? Also Suche testen mit objectClass=dominoGroup.

Du kannst die Gruppe als Workaround auch hierarchisch angeben, also im Gruppendokument WikiUsers/OU/Org, da kommt ein Popup beim Speichern, es funktioniert aber. Du kannst ja den flachen Namen als 2. Eintrag stehen lassen.

Update:
Sorry jetzt hab ich den ursprünglichen Post gelesen. Willst du wirklich die Member einer Gruppe haben? Das sollte mit memberOf gehen, aber ich denke nicht, daß Todes Ansatz zielführend war.
« Letzte Änderung: 03.07.12 - 16:29:15 von stoeps »
--
Grüsse
Christoph

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo stoeps,

ich brauche nicht die Member einer Gruppe, sondern das Zurückliefern genau einer Person, die ich bei der Suche auch mitgebe und die eben auch Mitglied in einer Gruppe ist - denn eine solche Suchabfrage kommt vom externen System für die Authentifizierung.

memberOf gibt's wohl nur im Active Directory, dominoAccessGroups sollte das Domino-Äquivalent seit Version 8 sein, was laut IBM-Doku auch viel toller ist, weil es gleich diverse Nested Groups auflöst und effektiver arbeitet, nur nutzt es mir in diesem Falle scheinbar gar nix.

Wir haben ein anderes System (ein Mail-Gateway), das selbst Gruppen nutzt und wo ich komplette Notes-Gruppen per LDAP einlesen kann - das läuft wunderbar mit den entsprechenden Queries - aber in diesem Falle hier komm ich damit leider nicht weiter.

Ciao
Sascha

Offline stoeps

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 831
  • Geschlecht: Männlich
  • It's your life, so live it your way.
    • Stoeps.de
Hi,

dominoAccessGroups liefert aber nur Gruppen zurück, in denen der Benutzer Mitglied ist, ich bin mir ziemlich sicher, daß der Vergleich dominoAccessGroups=CN=... nicht funktionieren wird.

http://www-01.ibm.com/support/docview.wss?uid=swg21270777

Ich hab grad keinen Domino da, versuche das aber später mal zu verifizieren.


--
Grüsse
Christoph

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo Christoph,

das ist genau der Knackpunkt: Z.B. das Attribut objectclass liefert die Objekt-Klassen zurück, "zu denen der User gehört". Da kann ich dann eine Abfrage à la (objectclass=person) machen, und das klappt. In dominoaccessgroups stehen die Gruppen-Namen in der Form CN=<Gruppenname> drin, nur ist das halt ein sog. Betriebsattribut, und das läßt sich scheinbar per Vergleich nicht abfragen (LDAPDebug liefert mir als Output, daß der Domino bei der Abfrage über den Fulltext-Index sucht, und daß die Werte da nicht drinstehen, wundert mich ja nicht).

Bei nem Active Directory (ohne das verifiziert zu haben), dürfte eine Abfrage in der Art (&(objectclass=person)(uid=testuser)(memberOf=WikiGruppe)) wohl funktionieren (ob mit CN= davor oder nicht, weiß ich nich). Domino läßt mich hier aber scheinbar im Regen stehen.

Ciao
Sascha

Offline stoeps

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 831
  • Geschlecht: Männlich
  • It's your life, so live it your way.
    • Stoeps.de
Hi Sascha,

memberof wird von Domino nicht unterstützt, in OpenLDAP muss man das manuell aktivieren, AD kann es automatisch. ;)

Ich habe jetzt mal folgende Suche gemacht:

(&(objectclass=groupofnames)(member=CN=Christoph Stoettner,o=company)(CN=LocalDomainAdmins))

-> ich erhalte eine Ausgabe, die Gruppe LocalDomainAdmins wird ausgegeben.

(&(objectclass=groupofnames)(member=CN=Christoph Stoettner,o=company)(CN=LocalDomainServers))

-> 0 Treffer

Ich hoffe das funktioniert auch in deiner Anwendung!
--
Grüsse
Christoph

Offline Sascha Seipp

  • Aktives Mitglied
  • ***
  • Beiträge: 139
  • Geschlecht: Männlich
Hallo Christoph,

danke für den Einsatz, das bringt mir so aber leider nix, da ich die Abfrage nutzen muß, die auch gleich weitere Infos über den User beim Anmelden einholt und abgleicht (Telefon, Abteilung etc.). Da muß als Such-Ergebnis also ein User herauskommen, und keine Gruppe.

Da ansonsten wohl auch niemand mehr dazu weiß, wird es wohl darauf hinauslaufen, ein zusätzliches Feld im Personendokument entsprechend zu befüllen und per LDAP abzufragen.
(Und ich werde IBM bei Gelegenheit mal darauf hinweisen, daß das so doof ist).

Ciao
Sascha

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz