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>
Partager