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 |
取得簡短且易記的描述,適合顯示在系統管理工具或其他使用者介面中。 (繼承來源 ProviderBase) |
EnablePasswordReset |
這個類別不會使用這個屬性。 |
EnablePasswordRetrieval |
這個類別不會使用這個屬性。 |
MaxInvalidPasswordAttempts |
這個類別不會使用這個屬性。 |
MinRequiredNonAlphanumericCharacters |
這個類別不會使用這個屬性。 |
MinRequiredPasswordLength |
這個類別不會使用這個屬性。 |
Name |
取得組態期間用來參考提供者的易記名稱。 (繼承來源 ProviderBase) |
PasswordAttemptWindow |
這個類別不會使用這個屬性。 |
PasswordFormat |
這個類別不會使用這個屬性。 |
PasswordStrengthRegularExpression |
這個類別不會使用這個屬性。 |
RequiresQuestionAndAnswer |
這個類別不會使用這個屬性。 |
RequiresUniqueEmail |
這個類別不會使用這個屬性。 |
ServiceUri |
取得或設定驗證服務的 URI。 |
方法
事件
UserValidated |
在驗證用戶時發生。 |
ValidatingPassword |
發生於使用者建立、變更密碼或重設密碼時。 (繼承來源 MembershipProvider) |