Asp.Net Authentification basée sur les rôles à l'aide de groupes de sécurité dans Active Directory
-
03-07-2019 - |
Question
J'essaie de faire quelque chose de simple (pensais-je): sécuriser mon application à l'aide d'une sécurité basée sur les rôles à l'aide de groupes Active Directory de notre domaine.
Plus précisément, je dois afficher / masquer des éléments sur une page, que l'utilisateur actuellement connecté fasse ou non partie de domain\groupA
dans Active Directory. Pour une raison quelconque, il est difficile de trouver des informations sur l’utilisation de Active Directory à cet effet. Tout ce que je semble retrouver va dans les détails de l’utilisation de l’authentification basée sur des formulaires à l’aide de rôles ou utilise une base de données pour stocker les informations.
Tout ce que je veux, c’est utiliser notre structure de sécurité déjà décrite dans notre Active Directory. Quelqu'un peut-il s'il vous plaît expliquer ce dont j'ai besoin?
Ai-je besoin de:
-
<roleManager enabled="true"/>
dansweb.config
-
<allow roles ="domain\groupA"/>
dansif (User.IsInRole(@"domain\groupA")){ //do stuff }
- IIS défini sur l'authentification Windows
- <=> dans ma page?
Que manque-t-il d'autre? N'importe quoi? Parce que ça ne marche pas. heh.
Merci à tous pour votre aide.
La solution
Vous avez probablement juste besoin d'ajouter un RoleProvider à votre web.config pour indiquer à l'application comment effectuer des recherches contre AD.
Exemple de code provenant de ici .
<roleManager defaultProvider="WindowsProvider"
enabled="true"
cacheRolesInCookie="false">
<providers>
<add
name="WindowsProvider"
type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>