Bug 80057

Summary: mod_authz_ldap prevents use of other auth mechanisms if loaded
Product: [Retired] Stronghold Cross Platform Reporter: Joe Orton <jorton>
Component: mod_authz_ldapAssignee: Joe Orton <jorton>
Status: CLOSED ERRATA QA Contact: Stronghold Engineering List <stronghold-eng-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0CC: tao
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-03-03 09:17:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Joe Orton 2002-12-19 11:26:53 UTC
Description of problem:
If mod_authz_ldap is configured a for *any* location, it tries to take over
authentication for *all* locations where auth is required (even if other
locations use AuthUserFile-based authentication).

Version-Release number of selected component (if applicable):
0.19

How reproducible:
always

Steps to Reproduce:
Use a config like:

   <Location /ldap>
      AuthzLDAPServer localhost
      AuthzLDAPUserBase dc=example,dc=com
      AuthzLDAPUserKey uid
      AuthzLDAPUserScope base

      AuthType basic
      AuthName "ldap"
      require valid-user

   </Location>

   <Location /basic>
	AuthType basic
	AuthUserFile /blah/passwd
	AuthName "basic"
	require valid-user
   </Location>

Then try and access location /basic/
    
Actual results:
failure to autbenticate regardless of username/password
error_log entries as follows:

[Thu Dec 19 11:20:33 2002] [crit] [client 172.16.18.90] [1650] no ldap connection
[Thu Dec 19 11:20:38 2002] [error] [client 172.16.18.90] [1650] bind as
(null)=joe,(null)/foo failed: 81

Expected results:
authentication in /basic/ based on passwd file contents

Additional info:

Comment 1 Joe Orton 2002-12-19 11:51:08 UTC
Worse yet; mod_authz_ldap prevents use of other auth mechanisms simply
if loaded, even if not configured.

A workaround is to put:
    AuthzLDAPAuthoritative off
in the location where non-LDAP authentication is needed.


Comment 2 Joe Orton 2003-03-03 09:17:56 UTC
An errata has been issued which should help the problem described in this bug report. 
This report is therefore being closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files, please follow the link below. You may reopen 
this bug report if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2003-082.html