L'aide Personnalisée MembershipProvider sans un contrôle de Connexion dans ASP.NET
Nous avons une coutume MembershipProvider
dans ASP.NET
. Maintenant, il y a 2 scénarios possibles, l'utilisateur peut être validé:
-
La connexion de l'utilisateur via
login.aspx
page en entrant son nom d'utilisateur/mot de passe. J'ai utilisé contrôle de Connexion et de faire le lien avec laMyMembershipProvider
. Cela fonctionne parfaitement bien. -
Un jeton d'authentification est transmise via une URL dans la chaîne de requête formulaire de différents sites web. Pour cela, j'ai une surcharge de
MembershipProvider.Validate(string authenticationToken)
, qui est en fait la validation de l'utilisateur. Dans ce cas, nous ne pouvons pas utiliser la contrôle de Connexion. Maintenant, comment puis-je utiliser le mêmeMembershipProvider
pour valider l'utilisateur sans l'aide de la contrôle de Connexion? J'ai essayé d'appelerValidate
manuellement, mais ce n'est pas la signature de l'utilisateur.
Voici l'extrait de code, je suis en utilisant
if (!string.IsNullOrEmpty(Request.QueryString["authenticationToken"])) {
string ticket = Request.QueryString["authenticationToken"];
MyMembershipProvider provider = Membership.Provider as MyMembershipProvider;
if (provider != null) {
if (provider.ValidateUser(ticket))
//Login Success
else
//Login Fail
}
}
OriginalL'auteur Ramesh Soni | 2008-09-03
Vous devez vous connecter pour publier un commentaire.
Après la validation est réussie, vous devez vous connecter à l'utilisateur, en appelant FormsAuthentication.Authentifier: http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.authenticate.aspx
EDIT: C'est FormsAuthentication.SetAuthCookie:
http://msdn.microsoft.com/en-us/library/twk5762b.aspx
Aussi, afin de rediriger l'utilisateur vers où il voulait aller, composez le: FormsAuthentication.RedirectFromLoginPage: http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication.redirectfromloginpage.aspx
texte du lien
OriginalL'auteur MartinHN
Vous pouvez définir votre propre
FormsAuthenticationTicket
si la validation est réussie.Quelque chose comme cela;
OriginalL'auteur JasonS
Vous avez raison dans le cas de stockage de l'authentification de l'information en tant que témoin direct. Mais avec une forte fonction de hachage (par exemple MD5 + SHA1) est grand et sécurisé.
Par ailleurs, si vous utilisez des sessions (qui est également à seulement un hachage cookie) vous pouvez joindre auth.
OriginalL'auteur Bernd