Hello,

J'ai des problèmes de configuration Apache (2.2) pour de l'authentification externe. Je m'explique :
- j'ai une application web pour laquelle j'ai restreint l'accès à travers une authentification externe (avec un module perl, AuthenNIS).
- seuls les utilisateurs présents dans l'annuaire NIS, et après une authentification réussie, sont autorisés à accéder à l'application.
- Afin d'ouvrir une session applicative propre à l'utilisateur authentifié, la variable REMOTE_USER (contenant le username) est transmise à mon application dans le header HTTP).
- Cette application web est capable de fournir ses propres pages, mais j'utilise Apache pour ses capacités meilleures, notamment pour les pages statiques. Je suis donc dans un cas de reverse proxy.

Mon problème est que j'arrive à m'authentifier, mais le contenu de la variable REMOTE_USER est null.
Sur une page de test, où je lance un script index.php qui affiche les valeurs des varibales d'environnement Apache après authentification, la variable REMOTE_uSER comporte le username.

La seule différence entre ces deux config réside dans le mode reverse proxy. J'ai essayé à peu près toutes les configurations que j'ai pu trouver sur le net, sans succès.

Auriez-vous une idée pour améliorer ma configuration Apache ?
J'ai aussi entendu dire que en cas d'échec, il était possible de coder, ou trouver sur internet, des scripts (wsgi par exemple) permettant de récupérer le contenu de cete variable à la place d'Apache. Mais

je n'ai pas trop compris comment cela fonctionne.

Merci d'avance.
F.T

Ci dessous ma configuration Apache :

Listen 2208

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<VirtualHost *:2208>
 
 
   RewriteEngine on
   ProxyPass /apps/ http://localhost:2209/   
   ProxyPassReverse /apps/ http://localhost:2209/
   ProxyPreserveHost On
 
 
 
   <location /apps/>
 
        Options +Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
 
 
        AuthType Basic
        AuthName "Authentifiez vous"
        PerlAuthenHandler Apache2::AuthenNIS
        PerlAuthzHandler Apache2::AuthzNIS
        PerlSetVar AllowAlternateAuth no
        require valid-user
 
   </location>
 
 
   RewriteRule . - [E=RU:%{LA-U:REMOTE_USER}]
   RequestHeader set REMOTE_USER %{RU}e
 
 
</VirtualHost>