Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So konfigurieren Sie die Mitgliedschaft mit einer anderen Datenbank als aspnetdb

Sie müssen einen Mitgliedschaftsanbieter erstellen, um eine Verbindung zu Ihren benutzerdefinierten Tabellen zur Authentifizierung herzustellen. MSDN hat einige Dokumentation zu diesem Thema. Sie können sich auch ein Video zu diesem Thema bei ASP.NET ansehen. Hier sind die Links.

Die Hauptmethode für die Validierung wird die ValidateUser-Methode sein, Sie werden diese Methode überschreiben, um die Authentifizierung bereitzustellen.

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
}

Wenn Sie Rollen in Ihrer Anwendung haben, möchten Sie vielleicht auch einen benutzerdefinierten Rollenanbieter implementieren:

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