J'ai tout lu sur ce sujet que j'ai pu trouver, y compris des articles MSDN et AINSI de posts, mais je suis toujours perdu et confus.
Questions
Veuillez répondre aux questions suivantes (si possible):
Qu'est-ce que SimpleMembership/SimpleMembershipProvider (WebMatrix.WebData) et quel est-il/sont-ils responsables?
Qu'est-ce que WebSecurity (WebMatrix.WebData)?
Qu'est-ce que l' Adhésion (Système d'.Web.De sécurité) de la classe?
Pourquoi ne MVC4 créer un UserProfile table et un webpages_Membership table? Quelles sont-elles et quelle est la différence? Qu'est-ce que le UserProfile classe qui MVC4 crée?
Qu'est-ce que le UsersContext classe?
Comment faire toutes ces travailler ensemble pour faire de l'authentification de l'utilisateur?
Ma Situation
À ces questions, alors déboucher sur le problème suivant:
Supposons que j'ai une base de données existante avec les utilisateurs (Id, noms d'utilisateur, mots de passe). Je suis en création d'une nouvelle MVC4 application et à l'aide de l'Authentification par Formulaires. Les mots de passe utilisateur sont stockées dans la base de données sous une forme cryptée (pas bcrypt).
Que dois-je faire pour le faire fonctionner avec MVC4?
Dois-je créer un personnalisé MembershipProvider?
Ma Connaissance À Ce Jour
Aussi loin que je peux comprendre, WebSecurity est une classe statique (Module) qui interagit avec un MembershipProvider. Un MembershipProvider est une classe qui s'explique de la façon dont les fonctions de travail, tels que ValidateUser, CreateUser, ChangePassword.
Pour résoudre mon problème, je suppose que j'ai besoin de créer un personnalisé MembershipProvider et dire WebSecurity d'utiliser mon nouveau MembershipProvider.
Bounty?
J'ai placé une prime sur cette question et a l'intention d'attribuer à Andy Brown une excellente réponse.