AUTH_USER avec easyphp

Bonjour,

Je travaille actuellement avec Easyphp 1.8 et j'aurai souhaité récupérer la variable globale $_SERVER['AUTH_USER'].

Cependant, il semblerait que cette variable ne soit pas reconnu ou définie sur php.

J'ai testé avec easyphp 2.0 et easyphp 3.0 pour savoir si cela ne venait pas d'un probleme de version, mais le résultat est le même.

Avec la fonction phpinfo(), effectivement cette variable n'est pas visible !
Voici un extrait de la variable $_SERVER

[_SERVER] => Array
(
[COMSPEC] => C:\WINDOWS\system32\cmd.exe
[DOCUMENT_ROOT] => d:/easyphp1-8/www/test
[HTTP_ACCEPT] => */*
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[HTTP_ACCEPT_LANGUAGE] => fr
[HTTP_CONNECTION] => Keep-Alive
[HTTP_COOKIE] => PHPSESSID=8e22691fad1440b56a39c6e4e5080dfe
[HTTP_HOST] => 203.35.xx.xx
[HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
[PATH] => C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\outils\Diskeeper\;D:\EASYPH~1\Apache;D:\EASYPH~1\PHP
[REMOTE_ADDR] => 203.35.xx.xx
[REMOTE_PORT] => 1833
[SCRIPT_FILENAME] => d:/easyphp1-8/www/test/paquets.php
[SERVER_ADDR] => 203.35.xx.xx
[SERVER_ADMIN] => admin@localhost
[SERVER_NAME] => 203.35.xx.xx
[SERVER_PORT] => 80
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache/1.3.33 (Win32) PHP/4.3.10
[SystemRoot] => C:\WINDOWS
[WINDIR] => C:\WINDOWS
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /paquets.php
[SCRIPT_NAME] => /paquets.php
[PATH_TRANSLATED] => d:/easyphp1-8/www/test/paquets.php
[PHP_SELF] => /paquets.php
)

Ma question est la suivante :
Est-il possible sous easyphp d'utiliser la vairable globale $_SERVER['AUTH_USER'] ? Et si oui à quel niveau cela se paramètre-t-il ? php.ini ? library ? apache ?

Merci d'avance de vos réponses
Configuration: Windows XP
Opera 9.63

6 réponses

  1. Et si tu utilise REMOTE_USER ?
    1. REMOTE_USER est inconnu au bataillon sous phpinfo() !!!

      Je n'ai acces qu'à REMOTE_ADDR et REMOTE_PORT
  2. Si au moins ca résolvait ce problème, pourquoi pas !
    Mais à priori ce n'est pas le cas... à moins qu'il ne faille configurer un module ?
    Dans ce cas là je suis preneur de l'info :D
    1. Déjà easyphp n'est pas trop une référence.
      Je te conseille plutôt WAMP.

      Si tu préfère rester avec easyphp tu devrais installer la dernière version au moins ;)
      1. Je ne connais pas trop mais jette un coup d'oeil là :
        http://www.sunyday.net/article-authentification-PHP-active-directory.html
        ça pourrait peut-être t'aider.

        Apparemment c'est $_SERVER['PHP_AUTH_USER']
        1. Merci pour le lien, mais il s'agit d'un formulaire d'authentification qui vérifie les données envoyées en interrogeant LDAP.
          Ce type de formulaire je sais le faire et est déjà en place à un autre endroit de mon site.

          Ce que je souhaite, c'est une page accessible à tous (réseau local) et qui récupère l'utilisateur "windows" connecté sur le domaine. sans avoir à se logger.

          Par contre, cette page renverra des infos personnalisées suivant le corrélation du user "windows" et du user trouvé dans l'AD.

          Je suis toujours preneur si quelqu'un trouve le moyen de récupérer les infos $_SERVER['PHP_AUTH_USER'] (ou $_SERVER['AUTH_USER'] suivant les versions) avec EasyPhp...
      2. Il faut donc activer le module LDAP dans PHP. <<< tu parles de extension=php_ldap.dll ?

        Si c'est le cas le module LDAP est activé

        voici l'extraction de phpinfo

        ldap
        LDAP Support enabled
        RCS Version $Id: ldap.c,v 1.130.2.10 2004/06/01 21:05:33 iliaa Exp $
        Total Links 0/unlimited
        API Version 2004
        Vendor Name OpenLDAP
        Vendor Version 0

        D'ailleurs mon intention c'est pour récupéré le username d'une session windows sur un domaine AD

        La liaison php / AD via LDAP marche très bien mais il me manque la variable globale AUTH_USER et se serait parfait !
        1. Salut,

          Je n'ai jamais utilisé $_SERVER['AUTH_USER'] mais il me semble que ça ne marche que si tu utilises une authentification (active directory par exemple).
          Il faut donc activer le module LDAP dans PHP.