2010-08-25 3 views
1

Peut-être que j'utilise les mauvais termes, mais je fais du googling depuis deux jours et je n'y trouve rien: grouper les rôles/permissions. Ou peut-être que je ne comprends pas très bien l'appartenance au modèle ASP.Net.Regroupement de rôles dans un fournisseur d'appartenances personnalisées dans ASP.Net MVC 2

Actuellement, j'ai un système d'authentification de chez moi sur un site PHP, avec des utilisateurs, des permissions et des rôles. Chaque rôle (tel que "Utilisateur" ou "Technicien") est constitué d'autorisations individuelles (telles que "Ajouter un nouvel utilisateur" ou "Fermer un ticket"). Le site est basé sur MVC, donc lorsque l'action du contrôleur est appelée, il recherche une autorisation de base. S'il n'est pas trouvé, il affiche une page non autorisée. Lorsqu'il recherche des autorisations, il regarde à l'intérieur des groupes de rôles. Toutefois, un utilisateur peut faire partie du rôle "Utilisateur" et disposer d'autorisations supplémentaires sans faire partie d'un autre rôle.

Comment cela se traduirait-il en MVC2?

Le site dispose d'une table de base de données pour le user, user_to_permissions, user_to_roles, permissions, roles et roles_to_permissions. Je pense que les relations sont assez explicites. Je pense que je devrais maintenir mes propres tables de base de données pour les utilisateurs, ainsi j'aurai des formes personnalisées pour ajouter/mettre à jour leurs informations, et évidemment une routine de connexion personnalisée.

Est-ce que cela peut même fonctionner?

Répondre

0

Les rôles de RoleProvider sont en réalité de simples autorisations. Vous pouvez les rouler et les présenter comme vous le souhaitez dans votre interface utilisateur (voir, par exemple, AzMan et AuthorizationStoreRoleProvider), mais c'est à vous de décider. Ils ne sont pas vraiment hiérarchiques.

+0

Donc tout regroupement serait personnalisé et une extension de RoleProvider? Je ne trouve pas du tout de tutoriels clairs et précis sur le système d'adhésion en ce qui concerne le stockage des informations sur les utilisateurs dans une base de données, donc, une fois que j'en trouverai un, je pense que tout cela pourrait mieux fonctionner. –

+0

Oui, les rôles sont comme des cases à cocher sur un utilisateur, * en ce qui concerne le RoleProvider générique * - soit ils sont vérifiés (vous avez le rôle) ou non (vous ne le faites pas). C'est tout. –

Questions connexes