2011-12-20 3 views
2

Je considère le mécanisme de connexion et de sécurité sur mon site de test. Situation actuelle est suit:Appartenance (+ rôles) État de session VS Authentification de formulaire VS

  • il y a une table dans la base de données, avec 3 colonnes (nom, mot de passe, le nombre de différencier les droits d'accès)
  • Suite à votre identification et l'attribution des droits d'accès, session est créée, avec le nom des utilisateurs et des droits d'accès
  • administrateur a accès partout, l'utilisateur à certaines pages et non utilisateur connecté uniquement à accueillir et à la page de connexion
  • chaque page est héritée de la page principale, où est une logique pour vérifier la session
  • admin et pages spécifiques à l'utilisateur ont le contrôle mecha canisme pour déterminer les droits d'accès de l'utilisateur actuel en session

J'ai essayé aussi le faire avec le gestionnaire des membres et des rôles, mais la base de données générée par asp.net est un très grand désordre (grand nombre de tables et enregistrements dans toutes les table). Je n'ai aucune idée de la façon de configurer l'appartenance et les rôles comme je l'ai écrit ci-dessus (signifie tableau simple et utiliser mes propres commandes de connexion).

Mais il y a certains avantages de l'appartenance et des rôles (facile à obtenir le nombre d'utilisateurs connectés, moins de code, déconnexion automatique lors de la fermeture de la page/navigateur, gestion automatique des sessions, etc ...).

Je pensais aussi à l'authentification par formulaire, mais je ne suis pas sûr, s'il y a une telle flexibilité avec la session et l'appartenance.

Répondre

0

Tout ce que vous voulez faire est déjà couvert dans le fournisseur d'adhésion qui est très simple à utiliser. Si vous n'avez pas besoin de quelque chose de trop complexe ou personnalisé, je vous suggérerais sérieusement de regarder à nouveau le fournisseur d'adhésion car il ferait exactement ce que vous voulez faire, et il a été testé et testé. Ne réinventez pas la roue pour le plaisir.

Jetez un oeil à ces articles qui couvrent la chose en bon détail:

Examining ASP.NET's Membership, Roles, and Profile

+0

OK, mais est-il possible de forcer l'appartenance et le fournisseur de rôles à travailler avec une base de données aussi simple? – polohy

+0

@polohy - c'est possible en créant des membres personnalisés et/ou des fournisseurs de rôles. Jetez un oeil sur le lien dans mon message. – TheBoyan

Questions connexes