You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by Frank Thommen <fr...@drosera.ch> on 2009/06/05 20:54:13 UTC

Probleme mit LDAP Authentifizierung nach Wechsel von Apache 1.3 auf 2.2

Hallo zusammen,

ich muss eine Seite von einem aelteren Apache 1.3 mit auth_ldap auf 
einen Apache 2.2 mit mod_authnz_ldap migrieren.  Leider funktioniert 
nach der Migration die Authentifizierung via LDAP nicht mehr.


Auf dem alten Server (Apache 1.3.34) habe ich auth_ldap geladen:

[...]
httpd.conf:LoadModule auth_ldap_module   libexec/auth_ldap.so
httpd.conf:AddModule auth_ldap.c
[...]


im .htaccess des fraglichen Verzeichnisses steht:

<Files *.pl>
   SSLRequireSSL
   AuthType basic
   AuthName "My Auth"
   AuthLDAPURL ldap://ldapserver:389/cn=Users,dc=embl,dc=org?uid?
   AuthLDAPStartTLS off
   require valid-user
</Files>


Alles Funktioniert bestens.  Auf dem neuen Server (Apache 2.2.3) habe 
ich mod_authnz_ldap:

[...]
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule authz_user_module modules/mod_authz_user.so
[...]


im .htaccess File steht jetzt

<Files *.pl>
   SSLRequireSSL
   AuthType basic
   AuthBasicProvider ldap
   AuthzUserAuthoritative On
   AuthName "My Auth"
   AuthLDAPURL ldap://ldapserver:389/cn=Users,dc=embl,dc=org?uid?
   # AuthLDAPStartTLS off
   require <SIEHE UNTEN>
</Files>


Je nach 'require'-Direktive erhalte ich verschiedene Resultate:


=== require valid-user ===

Einloggen ist nicht moeglich.  Login-Dialog kommt zwar, aber er kommt 
nach jeder Login/PW-Eingabe zurueck.  Im ssl_error_log gibt es keine 
Fehlermeldungen.



=== require ldap-user       ===
=== require valid-ldap-user ===
=== require user fthommen   ===


* Bei Eingabe des korrekten Logins aber eines falschen PW:

[Fri Jun 05 20:22:58 2009] [warn] [client 10.1.103.215] [9513] auth_ldap 
authenticate: user fthommen authentication failed; URI 
/EM-booking/test.pl [ldap_simple_bind_s() to check user credentials 
failed][Invalid credentials]
[Fri Jun 05 20:22:58 2009] [error] [client 10.1.103.215] user fthommen: 
authentication failure for "/EM-booking/test.pl": Password Mismatch


* Bei Eingabe eines ungueltigen Usernamens:

[Fri Jun 05 20:23:16 2009] [warn] [client 10.1.103.215] [9508] auth_ldap 
authenticate: user asdfasdfasfd authentication failed; URI 
/EM-booking/test.pl [User not found][No such object]
[Fri Jun 05 20:23:16 2009] [error] [client 10.1.103.215] user 
asdfasdfasfd not found: /EM-booking/test.pl


* Bei Eingabe des korrekten Logins und des korrekten Usernamens:

Keine Fehlermeldung und der Login-Dialog kommt zurueck.


=== require ldap-user fthommen ===

Das funktioniert!  Aber das ist keine Option, da die Liste der Benutzer 
sehr variabel ist.  Die Autorisierung wird vom Tool gemacht, welches 
aufgerufen werden soll.



Ob "AuthzUserAuthoritative On" oder "AuthzUserAuthoritative Off" macht 
keinen Unterschied.

Ohne "AuthBasicProvider ldap" erhalte ich die Fehlermeldung "[Fri Jun 05 
20:49:41 2009] [error] [client 10.1.103.215] access to 
/EM-booking/test.pl failed, reason: verification of user id 'fthommen' 
not configured"


Wenn ich 
http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html#requiredirectives 
rchtig verstehe, muesste 'require valid-user' funktionieren, oder 
verstehe ich etwas falsch?  Wo koennte der Wurm liegen?


Gruss

    frank

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: Probleme mit LDAP Authentifizierung nach Wechsel von Apache 1.3 auf 2.2

Posted by Rainer Sokoll <r....@intershop.de>.
Frank Thommen wrote:

>> Sollte es nicht AuthzLDAPAuthoritative anstelle von
>> AuthzUserAuthoritative sein?
> 
> Doch :-|, "AuthzUserAuthoritative" ist aus dem falschen Module
> (mod_authz_user).  Mit "AuthzLDAPAuthoritative Off" funktioniert die
> Authentifizierung, mit "AuthzLDAPAuthoritative On" nicht.
> 
> Das verstehe ich allerdings nicht: Ich will ja gerade mit
> mod_authnz_ldap authentifizieren??
> 
> Zudem steht im Manual: "When no LDAP-specific Require directives are
> used, authorization is allowed to fall back to other modules as if
> AuthzLDAPAuthoritative  was set to off." Da ich keine LDAP-spezifische
> require-Direktive habe, haette das Modul eigentlich auf
> "AuthzLDAPAuthoritative Off" zurueckfallen muessen...

Ich hab' gerade hier nochmal nachgesehen, ich habe:

AuthBasicProvider file ldap
AuthzLDAPAuthoritative off
AuthUserFile /dev/null
require valid-user

Das sieht zwar albern aus, funktioniert aber :-)

Rainer

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: Probleme mit LDAP Authentifizierung nach Wechsel von Apache 1.3 auf 2.2

Posted by Frank Thommen <fr...@drosera.ch>.
Rainer Sokoll wrote:
> Frank Thommen wrote:
> 
>> <Files *.pl>
>>   SSLRequireSSL
>>   AuthType basic
>>   AuthBasicProvider ldap
>>   AuthzUserAuthoritative On
>>   AuthName "My Auth"
>>   AuthLDAPURL ldap://ldapserver:389/cn=Users,dc=embl,dc=org?uid?
>>   # AuthLDAPStartTLS off
>>   require <SIEHE UNTEN>
>> </Files>
> 
> Sollte es nicht AuthzLDAPAuthoritative anstelle von
> AuthzUserAuthoritative sein?

Doch :-|, "AuthzUserAuthoritative" ist aus dem falschen Module 
(mod_authz_user).  Mit "AuthzLDAPAuthoritative Off" funktioniert die 
Authentifizierung, mit "AuthzLDAPAuthoritative On" nicht.

Das verstehe ich allerdings nicht: Ich will ja gerade mit 
mod_authnz_ldap authentifizieren??

Zudem steht im Manual: "When no LDAP-specific Require directives are 
used, authorization is allowed to fall back to other modules as if 
AuthzLDAPAuthoritative  was set to off." Da ich keine LDAP-spezifische 
require-Direktive habe, haette das Modul eigentlich auf 
"AuthzLDAPAuthoritative Off" zurueckfallen muessen...


Vielen Dank

    frank

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: Probleme mit LDAP Authentifizierung nach Wechsel von Apache 1.3 auf 2.2

Posted by Rainer Sokoll <r....@intershop.de>.
Frank Thommen wrote:

> <Files *.pl>
>   SSLRequireSSL
>   AuthType basic
>   AuthBasicProvider ldap
>   AuthzUserAuthoritative On
>   AuthName "My Auth"
>   AuthLDAPURL ldap://ldapserver:389/cn=Users,dc=embl,dc=org?uid?
>   # AuthLDAPStartTLS off
>   require <SIEHE UNTEN>
> </Files>

Sollte es nicht AuthzLDAPAuthoritative anstelle von
AuthzUserAuthoritative sein?

Rainer

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------