begin process at 2012 05 31 17:00:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Réseau & Internet

 > 

Récupération du login windows


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récupération du login windows

jeudi 21 avril 2005 à 16:56:26 | Récupération du login windows

fredo35m

Bonjour,

je souhaiterais savoir s'il est possible de récupérer le login tapé lors d'ouverture de session windows dans un programme php?
Il s'agit d'une page intranet, et je souhaiterais que l'utilisateur n'est pas à retaper un login.
Merci de votre aide.
jeudi 21 avril 2005 à 17:54:14 | Re : Récupération du login windows

MeuSli

c'est surement ca que tu cherches.....

http://www.phpcs.com/code.aspx?id=25272
vendredi 22 avril 2005 à 10:20:20 | Re : Récupération du login windows

fredo35m

oui c'était ce que je recherchais mais que dois-je mettre sur les pages suivantes ??

J'ai mis :

<html>
<head> RECUPERATION DU LOGIN </head>
<body>
<?php
session_start();
echo $_SESSION['Login'];
echo $Login;
?>
</body>
</html>

mais ça marche pas ?? j'ai oublié quelque chose??
Merci

vendredi 22 avril 2005 à 11:05:52 | Re : Récupération du login windows

JoJo738

Membre Club
Lu
Oui tu as oublié qqchose ... De mettre session_start(); avant TOUT code Html dans ta page
<?php
  session_start();
?>
<html>
  <head>
    <title>RECUPERATION DU LOGIN</title>
  </head>
  <body>

    <?php
      
echo $_SESSION['Login'];
    
?>
  </body>
</html>


Si ma reponse te convient, merci de l'accepter !
vendredi 22 avril 2005 à 11:37:11 | Re : Récupération du login windows

fredo35m

merci de ta réponse mais même quand je mets ça la page ne fait pas apparaitre le login alors que j'ai testé sur la page index.php si je mets
echo $_SESSION['Login']; ça marche !!
donc je comprends pas tout !!
vendredi 22 avril 2005 à 12:57:55 | Re : Récupération du login windows

JoJo738

Membre Club
Dans index.php tu as initialisé session_srat(); ?


Si ma reponse te convient, merci de l'accepter !
vendredi 22 avril 2005 à 13:44:09 | Re : Récupération du login windows

fredo35m

désolé mais je suis pas un super pro de php !!!!
Voila ce que j'ai fait !!!:
j'ai la page index.php comme dans le script que tu m'as conseillé auquel j'ai juste modifier le header à la fin sinon tout est rester pareil !!!
header("Location: nomlog.php"); 
je dois changer quelque chose dans le session start() de la première page???

Et dans ma page monlog.php j'ai mis :

<?php
  session_start();
?>
<html>
  <head>
    <title>RECUPERATION DU LOGIN</title>
  </head>
  <body>

    <?php
      
echo $_SESSION['Login'];
    
?>
  </body>
</html>

vendredi 22 avril 2005 à 13:54:58 | Re : Récupération du login windows

JoJo738

Membre Club
Non, donne nous ton script de index.php stp


Si ma reponse te convient, merci de l'accepter !
vendredi 22 avril 2005 à 13:57:45 | Re : Récupération du login windows

fredo35m

dac !! le voici :
<?php

session_start();

$headers = apache_request_headers();  // Récupération des l'entêtes client

if ($_SERVER['HTTP_VIA'] != NULL){ // le ntlm ne passe pas par proxy :(
 echo "Proxy bypass!";
}
elseif($headers['Authorization'] == NULL){    //si l'entete autorisation est inexistante
  header( "HTTP/1.0 401 Unauthorized" );   //envoi au client le mode d'identification
  header( "WWW-Authenticate: NTLM" );   //dans notre cas le NTLM
  exit;       //on quitte

 }

 if(isset($headers['Authorization']))     //dans le cas d'une authorisation (identification)
 {  
  if(substr($headers['Authorization'],0,5) == 'NTLM '){  // on vérifit que le client soit en NTLM
 
   $chaine=$headers['Authorization'];      
   $chaine=substr($chaine, 5);    // recuperation du base64-encoded type1 message
   $chained64=base64_decode($chaine);  // decodage base64 dans $chained64
   
   if(ord($chained64{8}) == 1){     
   //     |_ byte signifiant l'etape du processus d'identification (etape 3)  
  
   // verification du drapeau NTLM "0xb2" à l'offset 13 dans le message type-1-message (comp ie 5.5+) :
    if (ord($chained64[13]) != 178){
     echo "NTLM Flag error!";
     exit;
    }
 
    $retAuth = "NTLMSSP".chr(000).chr(002).chr(000).chr(000).chr(000).chr(000).chr(000).chr(000);
    $retAuth .= chr(000).chr(040).chr(000).chr(000).chr(000).chr(001).chr(130).chr(000).chr(000);
    $retAuth .= chr(000).chr(002).chr(002).chr(002).chr(000).chr(000).chr(000).chr(000).chr(000);
    $retAuth .= chr(000).chr(000).chr(000).chr(000).chr(000).chr(000).chr(000);
    
    $retAuth64 =base64_encode($retAuth);  // encode en base64
    $retAuth64 = trim($retAuth64);    // enleve les espaces de debut et de fin
    header( "HTTP/1.0 401 Unauthorized" );   // envoi le nouveau header
    header( "WWW-Authenticate: NTLM $retAuth64" ); // avec l'identification supplémentaire
    exit;
   
   }
   
   else if(ord($chained64{8}) == 3){
   //          |_ byte signifiant l'etape du processus d'identification (etape 5)
 
    // on recupere le domaine
    $lenght_domain = (ord($chained64[31])*256 + ord($chained64[30])); // longueur du domain
    $offset_domain = (ord($chained64[33])*256 + ord($chained64[32])); // position du domain. 
    $domain = str_replace("\0","",substr($chained64, $offset_domain, $lenght_domain)); // decoupage du du domain
    
    //le login
    $lenght_login = (ord($chained64[39])*256 + ord($chained64[38])); // longueur du login.
    $offset_login = (ord($chained64[41])*256 + ord($chained64[40])); // position du login.
    $login = str_replace("\0","",substr($chained64, $offset_login, $lenght_login)); // decoupage du login
   
    if ( $login != NULL){
     // stockage des données dans des variable de session
     $_SESSION['Login']=$login;
     header("Location: nomlog.php");     
     exit;
    }
    else{
     echo "NT Login empty!";
    }
     
  
   }
  }

}

?>

 

vendredi 22 avril 2005 à 14:08:05 | Re : Récupération du login windows

JoJo738

Membre Club
Bissar  L'image « http://www.gigasmiley.com/images/demo/gigasmiley.com.smileystriangle/gigasmiley.com.smileystriangle.0084.gif » ne peut être affichée, car elle contient des erreurs.. Je ne vois pas ...

Si ma reponse te convient, merci de l'accepter !


Cette discussion est classée dans : windows, login, récupération, souhaiterais


Répondre à ce message

Sujets en rapport avec ce message

login windows [ par glad ] Bonjour, Je cherche depuis un moment un moyen simple pour récupérer le Login de windows en php. J'ai 3 serveurs : -IIS 5/Php 4 - apache 2/php 4  - Fonction de récupération de login [ par Davaeorn ] Voila c simple, je suis sur un réseau local (IUT) et j'ai crée un forum en php ... le seul hic c que j'aimerais mettre le nom de l'auteur dans la base identification intranet [ par furie ] Bonjour, <span style="font-family: Entetes http reçus deform POST différents sous Windows et Linux [ par steph12358 ] Salut à tousMon problème n'est pas, à proprement parler, relatif au php mais je le soumet quand même à votre perspicacité car certains webmaster y ont NTLM-GET-LOGIN-WINDOWS-WITH-PHP [ par Brydjy ] Bonjour à tous, J'ai besoin de l'aide d'un pro en PHPEn faite après de maintes recherche, je suis tombé sur ce post : http://www.phpcs.com/codes/NTLM- Problème de mysql_num_rows.. [ par nicomilville ] Salut,J'ai le code suivant :$db = mysql_connect($sql_host,$sql_user,$sql_pass); mysql_select_db($sql_bdd,$db); $requete = mysql_query("SELECT * FROM header("location:inscription.php?"); AIDEZ MOI C'EST URGENT [ par guyzolaguyzagne ] Bonjour chére internaute, j'aimerais que vous m'aidiez sur une chose j'ai une page d'authentification lorsque le login et le mot de passe seront bon i connexion avec login et pasword [ par stanly145 ] je suis vraiment débutent en phpet je vx savoir comment faire pr realiser une connexion avec login et pasword apartir dune base de donné sql "easy php conexion login et mot de passe [ par stanly145 ] <td class="" style="BORDER-RIGHT: black 1px solid; VERTICAL-ALIGN: top; WIDTH: 120px; PADDING-TOP: 10px; TEXT-ALIGN: cen


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales