Pre filter Active Directory


#1

Hallo,

der pre filter meiner Active Directory anbindung funktioniert nicht.
Im AD habe ich eine Gruppe erstellet namens “pascom-user” und 4 Mitglieder hinzugefügt.
Trotzdem werden alle User bei der simulation hinzugefügt.

Hier der Filter wie aus der Doku:

if (strpos($row[‘memberOf’],‘pascom-user’) !== false) {
return true;
}
return false;

Ich bitte um Hilfe.
Danke.


#2

Hallo,

am besten erstmal kurz debuggen:

  1. lass einen Test des Connectors laufen
  2. öffne die job-Box
  3. dort sollte es einen Link auf die “raw daten” geben
  4. öffne diese im Browser (oder einem json fähigen Editor)
  5. checke die Einträge und schaue ob es das gesuchte “memberOf” dort gibt

Gruß,

Thomas


#4

so sieht der Log in den raw daten aus allerdings greift der Filter nicht.


#5

Hallo @sami,

in deinem Fall scheint die MemberOf-Liste ein Array zu sein anstatt einen Strings. d. h. es ist eine gute Idee array_search zu verwenden:

if (array_search( 'pascom-user', $row['memberOf']) !== false) {
    return true;
}
return false;

Ich habe grade leider keine Gelegenheit den Code zu testen, es können also kleine Syntaxfehler enthalten sein. Klappt das bei dir?

Grüße,
Jan


#6

Hi,

ich habe das anders gelöst. Einfach den Suchfilter anpassen.

(&(sAMAccountType=805306368)(!(servicePrincipalName=*))(memberOf=CN=pascom-users,OU=Security Groups,DC=domain,DC=local)(!(isCriticalSystemObject=TRUE))(!(sAMAccountName=mobydick)))

Gruss

Flo


#7

Hi,

Hab das auch so gelöst gestern wie @florian.schermer
Der Pre Filter funktioniert einfach nicht.

Danke trotzdem.

Gruß
Sami