How to configure ASP.NET Membership with role management database in SQL Server
- http://msdn.microsoft.com/en-us/library/ff647401.aspx or
- Execute Aspnet_regsql.exe from v/s command prompt and add membership tables in your sqlserver.
- Add in web.config <authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
<roleManager enabled="true" defaultProvider="SqlRoleManager">
<providers>
<add name="SqlRoleManager"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="Your Connection Name"
applicationName="Application Name" />
</providers>
</roleManager>
<membership defaultProvider="AspNetSqlMembershipProvider">
<providers>
<clear />
<add name="AspNetSqlMembershipProvider" type="MySqlMembershipProvider class namespace which is given below... "
connectionStringName="Your Connection Name" enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
applicationName="ProjectTrack_App"
requiresUniqueEmail="false"
passwordStrengthRegularExpression=""
minRequiredPasswordLength="3"
minRequiredNonalphanumericCharacters="0"
/>
</providers>
</membership>
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="MySqlMembershipProvider class namespace which is given below..." connectionStringName="Your Connection Name Here" applicationName="ProjectTrack_App" />
</providers>
</profile> - Add MySqlMembershipProvider Class.................public class MySqlMembershipProvider : SqlMembershipProvider
{
public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
{
base.Initialize(name, config);
// Update the private connection string field in the base class.
string Connection = Convert.ToString(ConfigurationManager.ConnectionStrings["Conn name"]);
// Set private property of Membership provider.
FieldInfo connectionStringField = GetType().BaseType.GetField("_sqlConnectionString", BindingFlags.Instance | BindingFlags.NonPublic);
connectionStringField.SetValue(this, Connection);
}
} - Add role in database..
EXEC aspnet_Roles_CreateRole 'ThisApplication', 'NewRole'
EXEC aspnet_UsersInRoles_AddUsersToRoles 'ThisApplication', 'ThisUser', 'NewRole', 8
Comments
Post a Comment