Hello,
Je suis actuellement étudiant et je développe un site web en asp.net pour une école et je me retrouve face à une question que je me pose: Puis-je ajouter un rôle sans utiliser une base de donnée ?
Pour être plus précis, j'ai réalisé une authentification par LDAP et j'ai ajouter les balises <appSetting> dans mon web.config:
<appSettings>
<addkey="user0"value="Secretariat" />
<addkey="user1"value="Direction" />
</appSettings>
Ces <appSettings> que j'ai ajouter me permettent de gérer les administrateurs du site.
J'ai également ajouter le code suivant dans le web.config pour avoir un menu dynamique en fonction de l'utilisateur connecté:
<siteMapenabled="true"defaultProvider="XmlSiteMapProvider">
<providers>
<addname="XmlSiteMapProvider"
type
=
"
System.Web.XmlSiteMapProvider
"
siteMapFile
=
"
Web.sitemap
"
securityTrimmingEnabled
=
"
true
"
/></
providers
></
siteMap
>Pour tester, j'ai voulu définir des accès pour la page "Test.aspx" donc j'ai ajouter le code suivant dans le web.config.
<
locationpath="Test.aspx"><
system.web><
authorization><
allowusers="Direction"/><
denyusers="*"/></
authorization></
system.web></
location>
Donc pour revenir à mon problème, j'aimerais ajouter tout les noms des utilisateurs présent entre les balises <appSetting> dans un rôle, pour ensuite pouvoir utiliser le rôle comme ceci (voir flèche <<<<<<):
<locationpath="Test.aspx">
<
system.web><
authorization><
allowroles="MonRole"/> <<<<<<<<<<<denyusers="*"/></
authorization></
system.web></
location>
Et tout ça sans base de donnée!! Puisque je n'utilise pas de base de donnée pour l'authentification.
J'aimerais réaliser cette opération car les nom des utilisateurs qui se trouvent entre les balises <appSetting> peuvent être modifié si un jour par exemple une nouvelle personne viendrait prendre le poste du secretariat ou de la direction. Cela éviterait donc de modifier les noms des utilisateurs qui se trouvent entre les balises <appSetting> et aussi entre les balises <authorization>.
De cette manière il suffira simplement d'entrer les nouveaux noms dans les balises <appSetting> et puis ces nouveau noms iront se stocker dans le role et l'accès à la page "Test.aspx" sera modifier automatiquement.
J'éspère avoir été clair. Merci