La recherche s'effectue sur les titres des articles et leur contenus. Pour faire une recherche
par mots clefs, utilisez la commande TAG:[votre mot clef]. La pertinance n'est valide que
sur des recherches multis-mots.
Dans les sociétés utilisant l'Active Directory de Microsoft il peut être intéressant
de lier les applications web php avec les comptes utilisateurs. Nous avons déja vu
comment utiliser les comptes du domaine pour authentifier les personnes ( voir l'article
Authentification en PHP via Active Directory )
Maintenant nous allons utiliser les fonctions
ldap de php pout mettre en place un browser
permettant de sélectionner des comptes du domaine et de les retourner à un formulaire
HTML ( afin d'en simplifier la saisie ).
Il peut être utile d'inclure une authentification Active Directory dans vos applications PHP. En utilisant
le module
ldap fournis de base dans les distributions de PHP, il est possible de tester l'existance d'un
utilisateur et son mot de passe. Les étapes d'authenfication via
ldap sont les suivantes :
On force une erreur 401 pour faire apparaitre la fenêtre de login.
On se connecte au serveur
ldap. ( Controleur de domaine )
On tente un Bind avec le login / mdp de l'utilisateur.
On vérifie le code de retour
ldap.
Si l'utilisateur est authentifié, la variable
$auth_user contiendra son UserID dans le format
Domain\UserID. Si l'authentification échoue, on redirige l'utilisateur vers la page
NotAllowed.php.
Par défaut Internet Explorer proposera 3 tentatives de login, cette valeur ne peut être changée coté
script.
Le module
ldap se base sur certaines DLL de OpenSSL qui sont incluses dans les version de PHP inférieur à 4.2.0, pour les version
supérieurs, Vous devrez probablement télécharger OpenSSL et copier
libeay32.dll et
ssleay32.dll dans le path de windows. Pour activer l'extension
ldap dans PHP, il est nécessaire
de décommenter la ligne suivante de votre fichier PHP.ini :
extension=php_
ldap.dll
Ce petit exemple force l'apparition d'une boite d'authentification sur le navigateur en lui envoyant
une erreur
HTTP 401. Il tente ensuite une connection au serveur
ldap ( généralement un controleur de
domaine Active Directory ), si le BIND avec les variables PHP_AUTH_USER / PHP_AUTH_PW ( variables remplies
par la boite de login ) est réussit, l'utilisateur est authentifié, sinon il est redirigé vers une autre
page.