[postfix-users] keine Mailzustellung an deaktiviert LDAP-Benutzer

Marc Patermann hans.moser at ofd-sth.niedersachsen.de
Fr Feb 6 08:51:51 CET 2009


Johannes Grimm schrieb:
> Bei allen Test kam nun auch immer ein "false" als /mailadresse /zurück
quod erat demonstrandum ;)

> Mir scheint als würde der Postfix* keine boolean Abfrage machen bzw. 
> keinen boolean wert empfangen (können)*
> Stattdessen wird der zurückgeliefert wert "false" vor das @ gesetzt, 
> aber nicht ausgewertet.
Die Logik steckt in der Abfrage.
Wähle die LDAP-Abfrage so, dass sie nur dann ein Ergebnis hat, wenn die 
Bedingung erfüllt.
Mailadresse im Verzeichnis?
query_filter = (mail=%s)
result_attribute = mail

Mailadresse vorhanden und Mail erlaubt?
query_filter = (&(loginDisabled=FALSE)(mail=%s))
result_attribute = mail

Da der LDAP-Suchfilter eine AND-Verknüpfung "&" enthält, hast du deine 
Boolean-Abfrage dort untergebraucht

> Korrekterweise sollte bei einer negative abfrage ja auch nur die uid 
> geliefert werden.
> und bei einem "true" sollte ein "user not found" das ergebnis sein.
> 
> kann postfix boolean werte auswerten???
Ich glaube, du hast da noch ein Verständnisproblem was die LDAP-Abfragen 
angeht.

Angenommen es ist so:
Zustellung an Attribut "uid"
Mailen bei loginDisabled "false" erlaubt, bei "true" verboten.
Dann müsste
query_filter = (&(loginDisabled=FALSE)(uid=%u))
result_attribute = uid
trotzdem richtig sein, weil beide Werte durch "&" verknüpft sind und 
daher nur dann wenn es ein uid-Attribut gibt und loginDisabled=FALSE 
ist, ein Ergebnis zurück kommt und Postfix dies dann als positives 
Signal wertet (je nach Kontext dann an den Wert von uid versucht 
zuzustellen).

Marc



More information about the postfix-users mailing list