Tag: installation’
Authentification NTLM en PHP
- by admin
Pour le développement d’un intranet pour mon job, j’utilisais jusqu’à présent un script d’authentification NTLM afin que les utilisateurs soient automatiquement connectés sans devoir entrer ni login ni mot de passe. Jusqu’à ce que Microsoft (et mes très chers administrateurs réseaux) force l’installation d’une mise à jour de sécurité pour toutes les versions d’Internet Explorer ce qui rendis mon code totalement inopérant (IE doit représenter 99% des employés… il y a même des versions 6 à mon grand désespoir…)
Après quelques recherches, j’ai (enfin) trouvé un bout de code qui semble très bien fonctionné, qui retourne le nom de l’utilisateur, le domaine sur lequel il est, ainsi que le nom de sa machine:
[php]
$headers = apache_request_headers();
if (!isset($headers['Authorization'])){
header(‘HTTP/1.1 401 Unauthorized’);
header(‘WWW-Authenticate: NTLM’);
exit;
}
$auth = $headers['Authorization'];
if (substr($auth,0,5) == ‘NTLM ‘) {
$msg = base64_decode(substr($auth, 5));
if (substr($msg, 0, 8 ) != "NTLMSSP\x00")
die(‘error header not recognised’);
if ($msg[8] == "\x01") {
$msg2 = "NTLMSSP\x00\x02"."\x00\x00\x00\x00". // target name len/alloc
"\x00\x00\x00\x00". // target name offset
"\x01\x02\x81\x01". // flags
"\x00\x00\x00\x00\x00\x00\x00\x00". // challenge
"\x00\x00\x00\x00\x00\x00\x00\x00". // context
"\x00\x00\x00\x00\x30\x00\x00\x00"; // target info len/alloc/offset
header(‘HTTP/1.1 401 Unauthorized’);
header(‘WWW-Authenticate: NTLM ‘.trim(base64_encode($msg2)));
exit;
}
else if ($msg[8] == "\x03") {
function get_msg_str($msg, $start, $unicode = true) {
$len = (ord($msg[$start+1]) * 256) + ord($msg[$start]);
$off = (ord($msg[$start+5]) * 256) + ord($msg[$start+4]);
if ($unicode)
return str_replace("", », substr($msg, $off, $len));
else
return substr($msg, $off, $len);
}
$user = get_msg_str($msg, 36);
$domain = get_msg_str($msg, 28);
$workstation = get_msg_str($msg, 44);
print "You are $user from $domain/$workstation";
// result: You are maiis from DOMAIN/MYPC001
}
}
[/php]
Cette méthode est compatible avec Internet Explorer, Firefox et Opera.
Spécifications du NTLM (en anglais)
Twitster, application php pour suivre vos tweets
- by admin
Twitster est une application PHP open source qui vous permet d’afficher les tweets de tout ce que vous suivez sur Twitter et de les afficher sur n’importe quel site internet.
Et, il peut aussi filtrer les tweets par une balise de hachage (# par exemple) qui permet de créer un Twitter basé sur un groupe ou une communauté.

Twitster est livré avec un assistant d’installation qui permet de mettre en place le système rapidement.
Demo: Mon Twitster de test
Site web de Twister
Continue reading “Twitster, application php pour suivre vos tweets” »
Petite sélection de 50 magnifiques postes de travail
- by admin
Que vous travailliez sur Mac, PC, ou même les deux, la façon dont est installé votre poste de travail défini plus ou moins votre attitude et votre style de travail. Il peut également être une source d’inspiration. Voici une sélection faite par Hongkiat des 50 plus belles installations trouvées sur le net:
