本来想在第三篇文章里介绍一下 Membership的类的,不过现在中文msdn也出来了,所以就不写了,,直接到介绍Membership Providers。
Membership Providers提供了Membership数据源和服务之间的所有接口,在Asp.net2.0中提供了两个Provider:SqlMembershipProvider和ActiveDirectoryMembershipProvider,从命名中我们也可以看出,SqlMembershipProvider是把 sql server和sql server express数据库作为数据库源,而ActiveDirectoryMembershipProvider是有Microsoft Active Directory(活动目录)作为数据源的。
Membership Providers的基本工作是用来管理一个网站注册用的数据,并且提供一些函数用来做 创建,删除用户,验证用户登录信息,修改密码等工作。在.net 框架的System.Web.Security命名空间下有一个MembershipUser的类,这个类定义了Membership 用户的一些基本属性,Membership Provider用这个类来描绘每个用户信息。Membership Providers 有一个基础类 他的定义如下:(丛msdn里copy出来的)
public abstract class MembershipProvider : ProviderBase
{
// Abstract properties
public abstract bool EnablePasswordRetrieval { get; }
public abstract bool EnablePasswordReset { get; }
public abstract bool RequiresQuestionAndAnswer { get; }
public abstract string ApplicationName { get; set; }
public abstract int MaxInvalidPasswordAttempts { get; }
public abstract int PasswordAttemptWindow { get; }
public abstract bool RequiresUniqueEmail { get; }
public abstract MembershipPasswordFormat PasswordFormat { get; }
public abstract int MinRequiredPasswordLength { get; }
public abstract int MinRequiredNonAlphanumericCharacters { get; }
public abstract string PasswordStrengthRegularExpression { get; }
// Abstract methods
public abstract MembershipUser CreateUser (string username,
string password, string email, string passwordQuestion,
string passwordAnswer, bool isApproved, object providerUserKey,
out MembershipCreateStatus status);
public abstract bool ChangePasswordQuestionAndAnswer
(string username, string password,
string newPasswordQuestion, string newPasswordAnswer);
public abstract string GetPassword (string username,
string answer);
public abstract bool ChangePassword (string username,
string oldPassword, string newPassword);
public abstract string ResetPassword (string username,
string answer);
public abstract void UpdateUser (MembershipUser user);
public a