Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment configurer l'adhésion avec une base de données autre que aspnetdb

Vous devez créer un fournisseur d'appartenances pour vous connecter à vos tables personnalisées pour l'authentification. MSDN a de la documentation sur le sujet. Vous pouvez également visionner une vidéo sur le sujet sur ASP.NET. Voici les liens.

La principale méthode de validation sera la méthode ValidateUser, vous remplacerez cette méthode pour fournir une authentification.

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 vous avez des rôles dans votre application, vous pouvez également implémenter un fournisseur de rôles personnalisé :

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