2009-08-05 10 views
0

J'ai un énorme problème à comprendre l'adhésion à MVC. Nous avons dans nos contrôleurs de projet nommés "Admin" et "SuperAdmin" et ils sont réservés à certains utilisateurs. Dois-je utiliser l'attribut Authorize Roles pour chaque action ou puis-je utiliser un filtre ActionFilter pour vérifier si un utilisateur peut afficher une certaine page?Affiliation ASP.NET MVC: comment puis-je le créer/le configurer?

Et si j'ai l'attribut User Roles, dois-je configurer chaque utilisateur sur l'outil de configuration ASP.NET? Par exemple, "SuperAdmin" ne comptera que quelques utilisateurs (environ 3 en haut), ce qui facilitera l'utilisation de l'outil de configuration ASP.NET et indiquera qui sont ces utilisateurs. Mais les utilisateurs "Admin" seront beaucoup plus ... comment puis-je les configurer?

Je suis totalement perdu!

J'ai besoin d'une bonne clarification sur ce point!

Merci beaucoup!

Répondre

2

Vous pouvez appliquer AuthorizeAttribute aux contrôleurs ainsi qu'aux actions. Si vous l'appliquez au contrôleur, chaque méthode aura son accès restreint par rapport à l'attribut. Vous pouvez également appliquer une autre instance de l'attribut à des actions individuelles pour restreindre davantage l'accès si nécessaire en fonction d'autres rôles. Vous devrez mettre les utilisateurs individuels dans leurs rôles pour qu'ils aient accès à des contrôleurs/actions contrôlés par des rôles.

+0

@tvanfosson - Mais, dans le cas des utilisateurs "Admin" (dont je ne sais pas combien d'entre eux existeront), dois-je configurer chacun un rôle "Admin" dans l'outil de configuration? – AndreMiranda

+0

@AndreMiranda - Il s'agit soit de les configurer dans l'outil de configuration, soit de créer votre propre système de gestion des utilisateurs afin que les SuperAdmin de l'application puissent y accéder eux-mêmes. – nkirkes

+0

@andreMiranda - Habituellement, je joue mon rôle RoleProvider et je configure la gestion des rôles dans la section administrateur de l'application, comme le suggère @mannish. Si vous utilisez WindowsTokenRoleProvider, vous pouvez gérer cela avec les groupes AD hors ligne. Cela dépend si cela est disponible pour votre application ou non. – tvanfosson

Questions connexes