
FAQ XMLRADConsultez toutes les FAQ
Nombre d'auteurs : 4, nombre de questions : 55, dernière mise à jour : 26�octobre�2006�

- Je me log mais je reviens toujours � la boite de login
- Quand j'essaye d'acc�der a une application en niveau de s�curit� Global, j'obtiens une erreur de boucle infinie
- Comment faire une authentification LDAP ou Activedirectory ?
- Comment se delogger lorsque l'on ferme la navigateur ou coment faire un cookie de session ?
Les domaines des chemins (domain path) des cookies sont sensibles � la casse
http://localhost/ProjectsBin/MyProject.dll/MyAction et
http://localhost/Projectsbin/MyProject.dll/MyAction
sont diff�rents pour le domain path des cookies. Donc les cookies ne correspondent pas pour ce chemin.
Quand une application est en niveau de securit� Global, il faut que certaines actions comme XMLC_FormLoin, XMLC_Login ne soit pas sous controle de cette s�curit� car ce sont ces actions qui vont permettre d'entrer dans l'application.
XMLRAD fourni donc un m�canisme de ByPass permettant de ne pas appliquer la s�curit� a un certains nombres d'action ou d'adresse IP.
V�rifiez que vous ayez un fichier ByPass.xml dans le r�pertoire Bin de votre projet.
Il doit ressembler a ceci :
<
ByPass
>
<
Actions
>
<
Action
>
<
Name
>
FormError<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_CheckChangePwd<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_ChangePwd<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_FormLogin<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_FormChangePwd<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_Login<
/
Name
>
<
/
Action
>
<
Action
>
<
Name
>
XMLC_Logout<
/
Name
>
<
/
Action
>
<
/
Actions
>
<
IPs
/
>
<
/
ByPass
>
A partir de la version 2005 R2, XMLRAD supporte l'authentification LDAP/ActiveDirectoty dans la s�curit� int�gr�e.
Pour effectuer une authentification LDAP et non utiliser le fichier XML par d�faut, il faut dans l'item Security des Resources du projet, selectionner LDAP dans le champ Security Directory de l'action menu. Ceci correspond aussi dans InitParams au param�tre XMLC_SecurityDirectory.
Dans InitParams, il y a une nouvelle section LDAP permettant de param�trer l'authentification:
Le param�tre LDAP_UserName d�finit le mod�le de nom d'utilisateur LDAP. exemple: CN={$XMLC_UserName},DC=XMLRAD,DC=COM. XMLC_UserName est le nom d'utilisateur saisi dans la boite de login. Si l'utilisateur saisi le nom toto dans la boite de login, le LDAP_UserName donnera: CN=toto,DC=XMLRAD,DC=COM. LDAP_UserName est alors introduit dans le Context pour �tre utilis� dans d'autres param�tres.
Le param�tre LDAP_UserURL est le mod�le d'URL LDAP qui sera utilis� pour effectuer le Bind ou l'authentification aupr�s du serveur. Exemple: LDAP://localhost/{$LDAP_UserName}. le param�tre LDAP_UserName calcul� pr�c�demment peut �tre utilis� dans cette URL. Avec un nom d'utilisateur toto cela donnera: LDAP://localhost/CN=toto,DC=XMLRAD,DC=COM. Le mot de passe saisi dans la boite de login sera utilis� avec cette URL ainsi que le LDAP_UserName pour effectuer le Bind ou l'authentification.
Le param�tre LDAP_SearchURL indique l'URL sur laquelle XMLRAD va pouvoir effectuer la recherche des groupes d'utilisateurs d�finis dans l'annuaire. Exemple: LDAP://localhost/DC=XMLRAD,DC=COM.
Le param�tre LDAP_MembershipFilter indique le crit�re de filtre pour d�terminer dans quels groupes est associ� un utilisateur. Exemple: (member={$LDAP_UserName}).
Il faut ensuite faire la relation entre les groupes XMLRAD et ceux de LDAP, pour cela on va aller dans chacun des groupes et remplir le champ DirectoryGroupName en Majuscule. Exemple: ADMINS
Pour ne rester logger jusqu'a que la fen�tre du navigateur soit ferm�, il faut utiliser un cookie de session, c'est � dire que le d�lai d'expiration soit nulle.
Pour faire un cookie de session, on peut utiliser le code suivant:
XMLRequest.AddCookie(Name, Value, Domain, Path, 0
);
XMLRequest.
AddCookie
(Name,
Value,
Domain,
Path,
0
);
XMLRequest.
AddCookie
(Name,
Value,
Domain,
Path,
0
);
xmlRequest.addCookie
(Name, Value, Domain, Path, "
"
);