Thanks a lot to all who helped me. Here is the solution i found with your support: # Set up reverse proxy # needs: mod_proxy ProxyRequests Off ProxyPass /folder http://backend-server ProxyPassReverse /folder http://backend-server# # Configuration of access protection. # <Location /folder> # needs: mod_ldap,mod_auth,mod_auth_ldap Order deny,allow Allow from all ## Auth LDAP Configuration (example) AuthLDAPURL ldap://ldaphost:389/CN=Users,DC=DOMAIN,DC=local?sAMAccountName?sub?(objectClass=user) AuthLDAPBindDN cn=Administrator,cn=Users,dc=DOMAIN,dc=local AuthLDAPBindPassword secret Require valid-user AuthType Basic AuthName "Extranet Login" #*** Pass the User without Password *** # needs: mod_headers; mod_rewrite # remove authorization header (username:password) RequestHeader unset authorization # configure user id format # Distinguished Name [On]; UserID (sAMAccountName) [Off] AuthLDAPRemoteUserIsDN Off #the following does not work, passed user is always 'null' #RequestHeader set authorization %{REMOTE_USER}e # -> Workaround with rewrite RewriteEngine On RewriteCond %{REMOTE_USER} (.*) RewriteRule .* - [E=R_U:%1] RequestHeader add X-Remote-User %{R_U}e </Location> The user authenticates against a Microsoft Active Directory when he accesses the /folder through the reverse proxy. The authorization header set by the browser is removed. Instead either the Windows login name (sAMAccountName) or the Distinguished Name of the user is passed to the backend server as clear text in X-Remote-User request header. I am not sure if the solution always works with special characters (like ä, ö, é ). You will have to test that in your environment. Does someone know a failsafe solution to that, like base64 encoding the X-Remote-User in Apache? Regards, Hayo Schmidt Boyle Owen schrieb: -----Original Message----- From: Hayo Schmidt [mailto:strato@xxxxxxx] Sent: Donnerstag, 9. Februar 2006 12:16 To: users@xxxxxxxxxxxxxxxx Subject: [users@httpd] Authorization header without password for basic authentication on a reverse proxy I have set up a reverse proxy (mod_proxy) on Apache 2.0.53 on SuSE Linux 9.3. The reverse proxy successfully handles basic authentication and then forwards to the protected web server. The authentication is handled by mod_auth_ldap against a M$ Active Directory Server. The user and password are transferred by standard apache functionality in a http request header parameter called 'authorization'. The value of the parameter looks something like this: 'Basic WErwSrweW4Dsaf3_'. The first means basic authentication, the latter is '<userid>:<password>' in a Base64-encoded format. I trust the authentication on Apache and would like to remove this unencrypted password, so that only the userid is transferred to the web server. It is a security issue not to disclose the password to anyone behind the reverse proxy. Is there any configuration where this can be set?It is the browser that forms the "Authorization" header. The apache proxy simply forwards the header (along with all the other headers in the request) to the backend server. If you don't want to pass this header in the proxy-backend network, you could protect the realm in the proxy and have it open in the backend; eg: In proxy: <Location /path/to/realm> Auth directives Require valid-user </Location> ProxyPass /path/to/realm http://backend-server ProxyPassReverse /path/to/realm http://backend-server In backend: - remove Auth directives Rgds, Owen Boyle Disclaimer: Any disclaimer attached to this message may be ignored.In case it cannot be configured: Which module of apache handles setting the authorization header? I did not find anything in the 2.0 sources (mod_proxy.c; mod_proxy_util.c; mod_proxy_http.c;mod_auth_ldap.c....). Are there useful changes with Apache 2.2? Hayo Schmidt --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxxDiese E-mail ist eine private und persönliche Kommunikation. Sie hat keinen Bezug zur Börsen- bzw. Geschäftstätigkeit der SWX Gruppe. This e-mail is of a private and personal nature. It is not related to the exchange or business activities of the SWX Group. Le présent e-mail est un message privé et personnel, sans rapport avec l'activité boursière du Groupe SWX. This message is for the named person's use only. It may contain confidential, proprietary or legally privileged information. No confidentiality or privilege is waived or lost by any mistransmission. If you receive this message in error, please notify the sender urgently and then immediately delete the message and any copies of it from your system. Please also immediately destroy any hardcopies of the message. You must not, directly or indirectly, use, disclose, distribute, print, or copy any part of this message if you are not the intended recipient. The sender's company reserves the right to monitor all e-mail communications through their networks. Any views expressed in this message are those of the individual sender, except where the message states otherwise and the sender is authorised to state them to be the views of the sender's company. --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx |