Créer la base de données.
Exécuté l’outil aspnet_regsql.exe se trouvant dans C:/Windows/Microsoft .NET/Framework/v x.xxx/
v x.xxxx = numero du framework utilisé.
Configuration du web.config :
<connectionStrings> <add name="MySqlConnection" connectionString="Data Source=******;Initial Catalog=****;Persist Security Info=True;User Id=*****;Password=***/;" providerName="System.Data.SqlClient" /> </connectionStrings> <system.web> <authorization> <allow users="?"/> </authorization> <authentication mode="Forms"> <forms loginUrl="~/connexion.aspx" timeout="20"/> </authentication> <compilation debug="true" targetFramework="4.0"/> <membership defaultProvider="SqlMembers" userIsOnlineTimeWindow="15"> <providers> <clear /> <add name="SqlMembers" type="System.Web.Security.SqlMembershipProvider" connectionStringName="MySqlConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" applicationName="/ " passwordFormat="Hashed" /> </providers> </membership> <roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider1"> <providers> <clear/> <add connectionStringName="MySqlConnection" applicationName="/" description=" database" name="AspNetSqlRoleProvider1" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> </providers> </roleManager> </system.web>
Nb : Accès à la configuration par le menu « site web » –> « configuration ASP.NET »
Formulaire de création d’un nouvel utilisateur :
<asp:CreateUserWizard ID="CreateUserWizard1" runat="server" CompleteSuccessText="Votre compte à été créé." ConfirmPasswordCompareErrorMessage="Vérifier vos mots de passe." ConfirmPasswordLabelText="Confirmez votre mot de passe ::" ConfirmPasswordRequiredErrorMessage="Mot de passe obligatoire." DuplicateEmailErrorMessage="L'adresse e-mail à déjà été utilisé." DuplicateUserNameErrorMessage="Choisissez un autre nom d'utilisateur." EmailRegularExpressionErrorMessage="Entrer un email différent." EmailRequiredErrorMessage="E-mail obligatoire;" InvalidAnswerErrorMessage="Entrer une autre réponse." InvalidEmailErrorMessage="Entrer un e-mail valide." InvalidQuestionErrorMessage="Entrer une autre question." PasswordLabelText="Mot de passe :" QuestionLabelText="Question de sécurité :" UnknownErrorMessage="Votre compte n'a pas été créé." UserNameLabelText="Nom d'utilisateur :" oncreateduser="CreateUserWizard1_CreatedUser"> <WizardSteps> <asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server"> </asp:CreateUserWizardStep> <asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server"> </asp:CompleteWizardStep> </WizardSteps> <asp:CreateUserWizard>
protected void CreateUserWizard1_CreatedUser(object sender, EventArgs e) { try { System.Web.Security.Membership.CreateUser(CreateUserWizard1.UserName, CreateUserWizard1.Password, CreateUserWizard1.Email); } catch { } }
Authentification :
<asp:Login ID="Login1" runat="server" Height="16px" LoginButtonText="Connexion" Orientation="Horizontal" PasswordLabelText="" RememberMeText="Se souvenir de moi." TitleText="" UserNameLabelText="" Width="510px" DestinationPageUrl="~/Default.aspx" onauthenticate="Login1_Authenticate"> </asp:Login>
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) { if (System.Web.Security.Membership.ValidateUser(Login1.UserName, Login1.Password)) { e.Authenticated = true; } else { e.Authenticated = false; } }
Ressources : http://msdn.microsoft.com/en-us/library/ff648345.aspx#paght000022_usingthesqlmembershipprovider