Nicht authentifizieren kann Subversion-Benutzer mit Apache und LDAP
Ich versuche, die LDAP-Authentifizierung für ein Subversion-repository, Zugriff über Apache-HTTP-Server.
Was auch immer ich versuche, Apache generiert die folgende Fehlermeldung:
authentication failed; URI /repos/branches/my-branch [ldap_search_ext_s() for user failed][Operations Error]
Ich habe mit der AD explorer von Sysinternals, um eine Verbindung zu meinem AD-server und kann die Daten sehen in dort, so dass ich vermute, es ist ein problem mit meinem LDAP-URL Suchbegriff. Ich habe versucht mehrere Variationen, aber immer den obigen Fehler. Hier ist, was ich in meiner httpd.conf. Irgendwelche Vorschläge oder Ideen, um dies zu diagnostizieren, würde geschätzt werden.
<Location /repos>
DAV svn
SVNPath C:\repos
AuthType Basic
AuthzLDAPAuthoritative off
AuthBasicProvider ldap
AuthName "IT Subversion repository"
AuthLDAPURL "ldap://x.y.z.com:389/DC=y,DC=z,DC=com?sAMAccountName?sub?(objectClass=user)" NONE
Require valid-user
</Location>
- Sollte nicht die
error.log
bieten eine ausführlichere Fehlermeldung? - Alle ich bin immer in der Fehlermeldung.log ist oben gezeigt wird, D. H. [Mo Jul 05 09:08:03 2010] [warn] [client 127.0.0.1] [9556] auth_ldap Authentifizierung: user xxxxxxxx Authentifizierung fehlgeschlagen; die URI /repos/branches/my-branch [ldap_search_ext_s() für den Benutzer ist fehlgeschlagen][Operationen-Fehler]
- Diese Seite spricht über eine Ldap-VERWEISE-option, die ausgeschaltet werden muss michele.pupazzo.org/diary/?p=227 ich weiß Leider nicht, wie diese Option abzuschalten, die für Apache 2.2 unter Windows. Es scheint ein LDAPReferrals Richtlinie, der kann in der httpd.conf-Datei, diese wird aber nicht umgesetzt 2.2 mod_ldap, nur 2.3, welches noch in der alpha-version httpd.apache.org/docs/trunk/mod/mod_ldap.html#ldapreferrals
- für anythone dies Lesen, es gibt einige zusätzliche relevante Inhalte auf der rayvd.wordpress.com/2011/08/01/rhels-apache-and-ldap-referrals
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mein problem war verkauft durch ändern der port von 389 3268. Port 389 sieht nur für den Lokalen Directory sondern 3268 sieht für Global Directory. Verwirrend ist, dass im LDAP-browser (JXplorer zum Beispiel) arbeiten beide Anschlüsse richtig.
Scheint es, dass Sie Active Directory verwenden, die keinen anonymen verbindlich. Versuchen Sie, die folgenden:
Hatte ich etwas ähnlich, obwohl die fremden. Zunächst ist es beim testen, aber nach einigen Apache neu gestartet und die Konfiguration fine-tuning funktioniert es nicht mehr.
Nach langer Suche im internet, es scheint, ich hatte so ändern Sie den port von 389 3268. Dies löste mein "[ldap_search_ext_s() für den Benutzer ist fehlgeschlagen][Operationen-Fehler]" Fehler aus irgendeinem Grund. Ich verstehe immer noch nicht warum, oder warum es funktionierte auf den ersten, aber es hat für mich.
Hatte das gleiche problem, müssen Sie in /etc/ldap/ldap.conf:
Mein problem gelöst.
Ich hatte dieses problem vor kurzem müssen Sie zum hinzufügen von 3 zusätzlichen Parameter
Wie jgnagy schlug vor, auch es half mir auch, wenn ich Hinzugefügt
LDAPReferrals einfach nicht existieren, in früheren Versionen, so gibt es nichts zu deaktivieren, wirklich...
Ich denke, wenn es Ihnen gelungen ist, eine übereinstimmung mit einem neueren LDAP/Apache die "LDAP-Verweis" als option, und versuchen zu verwenden und ältere AD, würden Sie haben, um es auszuschalten.
Für jemand anderen zu finden, sollten Sie versuchen, diese in der Reihenfolge:
telnet YOUR_AD_SERVER 389
Entweder man bekommt eine Verbindung und so etwas wie Escape-Zeichen ~, oder du hast den falschen Namen/IP für Ihre ANZEIGE, oder Ihre firewalls blockieren den Zugriff von Ihrem computer auf die ANZEIGE auf dem port 389.
Als Nächstes installieren Sie die openldap-Befehlszeilen-tools, openldap-clients, und sehen, ob Sie verwenden können, ldapsearch (Lesen Sie die man-Seite) zum durchführen einer Suche direkt auf Ihre AD-server ohne Apache in der Mitte.