sql >> Base de Datos >  >> RDS >> Sqlserver

Cómo configurar el envío de miembros con una base de datos que no sea aspnetdb

Debe crear un proveedor de membresía para conectarse a sus tablas personalizadas para la autenticación. MSDN tiene alguna documentación sobre el tema. También puede ver un video sobre el tema en ASP.NET. Aquí están los enlaces.

El método principal para la validación será el método ValidateUser, anulará este método para proporcionar autenticación.

public sealed class CustomMembershipProvider : MembershipProvider
{
    // implement other methods

    public override bool ValidateUser(string username, string password)
    {
        try
        {
            var user = // GET USER OBJECT HERE
            if (user != null)
            {
                string name =  // set username

                // Set your forms authentication ticket
                FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, user.ID.ToString(), DateTime.Now, DateTime.Now.AddMinutes(30), false, name, FormsAuthentication.FormsCookiePath);

                HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket));
                HttpContext.Current.Response.Cookies.Add(authCookie); 
                return true;                    
            }
        }
        catch
        {
        }

        return false;
    }

    // Other implementations
}

Si tiene roles en su aplicación, también puede implementar un proveedor de roles personalizado:

http://msdn.microsoft.com/ es-es/library/8fw7xh74(v=vs.100).aspx