J'essaye de configurer l'authentification en utilisant un fewtutorials J'ai trouvé sur le paradigme de fournisseurs d'adhésion trouvé dans ASP.NET v2.0. J'ai suivi les exemples dans le tutoriel mais n'arrive pas à obtenir la méthode FormsAuthentication.RedirectFromPage
pour fonctionner correctement. Lorsque je tente une connexion, les informations d'identification de l'utilisateur sont validées via Membership.ValidateUser
mais la page est renvoyée à Login.aspx au lieu de Default.aspx. Voici l'extrait pertinent de mon web.config:ASP.NET SqlMembershipProvider Infinite Loop?
...
<authentication mode="Forms">
<forms loginUrl="Login.aspx" protection="All" timeout="60" name="POTOKCookie" requireSSL="false" path="/FormsAuth"
slidingExpiration="true" cookieless="UseCookies" enableCrossAppRedirects="false" defaultUrl="~/Default.aspx"/>
</authentication>
<authorization>
<deny users="?" />
</authorization>
...
<membership defaultProvider="CustomizedProvider">
<providers>
<clear />
<add name="CustomizedProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="LoginDB2"
applicationName="POTOK"
minRequiredPasswordLength="5"
minRequiredNonalphanumericCharacters="0" />
</providers>
</membership>
J'ai vérifié que ma chaîne de connexion est correcte (puisque Membership.ValidateUser semble fonctionner très bien) et je suis en utilisant le contrôle de connexion ASP.NET pour l'interface utilisateur sur ma page Login.aspx. Voici le code de gestionnaire d'événements Authentifier:
Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate
If (Membership.ValidateUser(Login1.UserName, Login1.Password)) Then
FormsAuthentication.RedirectFromLoginPage(Login1.UserName, Login1.RememberMeSet)
End If
End Sub
Lorsque je visite l'url (http://localhost/Project) Je suis pris à: http://localhost/Project/Login.aspx et après le « login » mon URL est: http://localhost/Project/Login.aspx?ReturnUrl=%2fProject%2fDefault.aspx
Ai-je raté une étape de configuration ?
Je n'ai pas supprimé ma réponse précédente, car elle est également valide, vous n'avez pas besoin d'écrire de code pour l'événement Authenticate vous utilisez le contrôle Login avec l'appartenance ASP.NET, mais ce n'est pas la source de votre problème. Le problème était avec les cookies. –