Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
LDAP LOGIN
|
LDAP LOGIN ( url ; login ; motDePasse {; digest} ) | ||||||||
Paramètre | Type | Description | ||||||
url | Chaîne |
![]() |
URL du serveur LDAP auquel se connecter | |||||
login | Chaîne |
![]() |
Compte de l'utilisateur | |||||
motDePasse | Chaîne |
![]() |
Mot de passe de l’utilisateur | |||||
digest | Entier long |
![]() |
0 = envoyer mot de passe en digest MD5 (défaut), 1 = envoyer mot de passe sans encryptage | |||||
La commande LDAP LOGIN ouvre une connexion en lecture seule sur le serveur LDAP désigné par le paramètre url avec les identifiants login et motDePasse fournis. Si elle est acceptée par le serveur, cette connexion sera utilisée pour toutes les recherches LDAP effectuées par la suite dans le process courant, jusqu'à ce que la commande LDAP LOGOUT soit exécutée (ou que le process soit terminé).
Dans url, passez l'URL complet du serveur LDAP auquel se connecter, incluant le scheme et le port (389 by default). Ce paramètre doit être conforme à la rfc2255.
Vous pouvez ouvrir une connexion sécurisée via TLS en passant un url qui débute par "ldaps" et qui utilise un numéro de port spécifique (par exemple "ldaps://svr.ldap.acme.com:1389"). Le serveur LDAP doit généralement disposer d'un certificat SSL (c'est le cas pour MS Active Directory). Il est fortement recommandé d'utiliser une connexion TLS lorsque le mot de passe est transmis en texte brut (voir ci-dessous).
Note : Si vous passez une chaîne vide dans le paramètre url, la commande tentera de se connecter au serveur LDAP par défaut disponible sur le domaine (cette fonction est destinée uniquement aux besoins liés aux tests, pour des raisons de performances elle ne doit pas être utilisée en production).
Dans login, passez le compte utilisateur sur le serveur LDAP et dans motDePasse, passez le mot de passe du compte. Le login peut prendre l'une des formes suivantes, en fonction de la configuration du serveur LDAP :
Notez que les valeurs admises pour le login sont liées au mode de transmission du mot de passe, défini par le paramètre digest. Par exemple, dans une configuration par défaut de MS Active Directory :
Le paramètre digest vous permet de modifier le mode de transmission du mot de passe sur le réseau. Vous pouvez utiliser une des constantes suivantes, placées dans le thème "LDAP" :
Constante | Type | Valeur | Comment |
LDAP password MD5 | Entier long | 0 | (Défaut) Envoi du mot de passe encrypté en MD5 |
LDAP password plain text | Entier long | 1 | Envoi du mot de passe sans encryptage (connexion TLS recommandée) |
Note : L'authentification avec un mot de passe vide vous permet d'activer le mode de connexion anonyme (s'il est autorisé par le serveur LDAP). Cependant, des erreurs pourront être générées si vous essayez d'effectuer des opérations non autorisées dans ce mode spécifique.
Si les paramètres de connexion sont valides, une connexion au serveur LDAP est ouverte dans le process 4D. Vous pouvez alors rechercher et récupérer des informations à l'aide des commandes LDAP.
N'oubliez pas d'appeler la commande LDAP LOGOUT lorsque la connexion au serveur LDAP n'est plus nécessaire.
Vous voulez vous connecter à un serveur LDAP et effectuer une recherche :
ARRAY TEXT($_tabAttributes;0)
APPEND TO ARRAY($_tabAttributes;"cn")
APPEND TO ARRAY($_tabAttributes;"phoneNumber")
LDAP LOGIN("ldap://srv.dc.acme.com:389";"John Smith";"qrnSurBret2elburg")
$vfound:=LDAP Search("OU=UO_Users,DC=ACME,DC=com";cn=John Doe";LDAP tous niveaux;$_tabAttributes)
LDAP LOGOUT //ne pas oublier de se déconnecter
Cet exemple tente de se connecter à une application :
ON ERR CALL("ErrHdlr") //gestion d'erreurs
errOccured:=False
errMsg:=""
If(ppBindMode=1) //si mot de passe transmis en mode par défaut
LDAP LOGIN(vUrlLdap;vUserCN;vPwd;LDAP password MD5)
Else
LDAP LOGIN(vUrlLdap;vUserCN;vPwd;LDAP password plain text)
End if
Case of
:(Not(errOccurred))
ALERT("Vous êtes connecté au serveur LDAP. ")
:(errOccurred)
ALERT("Erreurs dans les paramètres")
End case
LDAP LOGOUT
ON ERR CALL("")
Produit : 4D
Thème : LDAP
Numéro :
1326
Créé : 4D v15
4D - Langage ( 4D v20 R7)