ClientFormsAuthenticationMembershipProvider 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用客户端应用程序服务启用表单身份验证。
public ref class ClientFormsAuthenticationMembershipProvider : System::Web::Security::MembershipProvider
public class ClientFormsAuthenticationMembershipProvider : System.Web.Security.MembershipProvider
type ClientFormsAuthenticationMembershipProvider = class
inherit MembershipProvider
Public Class ClientFormsAuthenticationMembershipProvider
Inherits MembershipProvider
- 继承
示例
以下示例代码演示如何使用此方法通过 IClientFormsAuthenticationCredentialsProvider 实现来验证用户。
private bool ValidateUsingCredentialsProvider()
{
bool isAuthorized = false;
try
{
ClientFormsAuthenticationMembershipProvider authProvider =
System.Web.Security.Membership.Provider as
ClientFormsAuthenticationMembershipProvider;
// Call ValidateUser with empty strings in order to display the
// login dialog box configured as a credentials provider.
isAuthorized = authProvider.ValidateUser(String.Empty, String.Empty);
}
catch (System.Net.WebException)
{
MessageBox.Show("Unable to access the authentication service.",
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
if (!isAuthorized)
{
MessageBox.Show("Unable to authenticate.", "Not logged in",
MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.Exit();
}
return isAuthorized;
}
Private Function ValidateUsingCredentialsProvider() As Boolean
Dim isAuthorized As Boolean = False
Try
Dim authProvider As ClientFormsAuthenticationMembershipProvider = _
CType(System.Web.Security.Membership.Provider, _
ClientFormsAuthenticationMembershipProvider)
' Call ValidateUser with empty strings in order to display the
' login dialog box configured as a credentials provider.
isAuthorized = authProvider.ValidateUser(String.Empty, String.Empty)
Catch ex As System.Net.WebException
MessageBox.Show("Unable to access the authentication service.", _
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Try
If Not isAuthorized Then
MessageBox.Show("Unable to authenticate.", "Not logged in", _
MessageBoxButtons.OK, MessageBoxIcon.Error)
Application.Exit()
End If
Return isAuthorized
End Function
注解
可以使用客户端应用程序服务通过表单身份验证来验证用户。 若要启用表单身份验证,请将应用程序配置为使用 ClientFormsAuthenticationMembershipProvider 类。
配置后,可以通过调用内部调用 ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String) 方法的 static
Membership.ValidateUser 方法来验证用户。
表单身份验证要求用户通过应用程序提供的登录控件指定其凭据。 可以检索凭据并将其传递给 Membership.ValidateUser 方法。 还可以传入空字符串或 null
以使用凭据提供程序。 凭据提供程序是应用程序配置文件中指定的 IClientFormsAuthenticationCredentialsProvider 实现。 通常实现 IClientFormsAuthenticationCredentialsProvider.GetCredentials 方法以显示登录对话框并返回填充 ClientFormsAuthenticationCredentials 对象。 使用凭据提供程序可以在多个应用程序之间共享单个登录对话框。
ClientFormsAuthenticationMembershipProvider.ValidateUser 方法通过 ServiceUri 属性指示的登录服务对用户进行身份验证。 ServiceUri 属性的值通常从应用程序配置文件和其他配置值检索。
如果用户成功进行身份验证,则服务提供商会将 static
Thread.CurrentPrincipal 属性设置为一个新的 ClientRolePrincipal 对象,该对象包含包含用户信息的新 ClientFormsIdentity 对象。 如果为应用程序配置了 ClientRoleProvider,则可以使用 ClientRolePrincipal 对象从角色服务中检索用户角色信息。
可以通过 static
Membership.Provider 属性检索对当前 ClientFormsAuthenticationMembershipProvider 实例的引用。 可以使用成员资格提供程序引用直接调用 ClientFormsAuthenticationMembershipProvider.ValidateUser 方法。 此外,需要成员资格提供程序引用来调用 Logout 方法,该方法在 MembershipProvider 基类中不可用。
不能使用 ClientFormsAuthenticationMembershipProvider 类创建、删除或修改成员身份信息。 若要创建、删除或修改用户,必须在服务器上更改登录服务的配置。
构造函数
ClientFormsAuthenticationMembershipProvider() |
初始化 ClientFormsAuthenticationMembershipProvider 类的新实例。 |
属性
ApplicationName |
此类不使用此属性。 |
Description |
获取适合在管理工具或其他用户界面(UI)中显示的简短友好说明。 (继承自 ProviderBase) |
EnablePasswordReset |
此类不使用此属性。 |
EnablePasswordRetrieval |
此类不使用此属性。 |
MaxInvalidPasswordAttempts |
此类不使用此属性。 |
MinRequiredNonAlphanumericCharacters |
此类不使用此属性。 |
MinRequiredPasswordLength |
此类不使用此属性。 |
Name |
获取用于在配置期间引用提供程序的友好名称。 (继承自 ProviderBase) |
PasswordAttemptWindow |
此类不使用此属性。 |
PasswordFormat |
此类不使用此属性。 |
PasswordStrengthRegularExpression |
此类不使用此属性。 |
RequiresQuestionAndAnswer |
此类不使用此属性。 |
RequiresUniqueEmail |
此类不使用此属性。 |
ServiceUri |
获取或设置身份验证服务的 URI。 |
方法
事件
UserValidated |
在验证用户时发生。 |
ValidatingPassword |
创建用户、更改密码或重置密码时发生。 (继承自 MembershipProvider) |