ClientFormsAuthenticationMembershipProvider Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Включает проверку подлинности форм с помощью служб клиентских приложений.
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.
После настройки можно проверить пользователей, вызвав метод static
Membership.ValidateUser, который внутренне вызывает метод ClientFormsAuthenticationMembershipProvider.ValidateUser(String, String).
Проверка подлинности форм требует, чтобы пользователь указал свои учетные данные с помощью элементов управления для входа, предоставляемых приложением. Вы можете получить учетные данные и передать их в метод Membership.ValidateUser. Вы также можете передать пустые строки или null
для использования поставщика учетных данных. Поставщик учетных данных — это реализация IClientFormsAuthenticationCredentialsProvider, указанная в файле конфигурации приложения. Обычно вы реализуете метод IClientFormsAuthenticationCredentialsProvider.GetCredentials для отображения диалогового окна входа и возврата заполненного объекта ClientFormsAuthenticationCredentials. Использование поставщика учетных данных позволяет совместно использовать одно диалоговое окно входа между несколькими приложениями.
Метод ClientFormsAuthenticationMembershipProvider.ValidateUser проверяет подлинность пользователей через службу входа, указанную свойством ServiceUri. Значение свойства ServiceUri обычно извлекается из файла конфигурации приложения вместе с другими значениями конфигурации.
Если пользователь успешно прошел проверку подлинности, поставщик служб задает свойство static
Thread.CurrentPrincipal для нового объекта ClientRolePrincipal, содержащего новый объект ClientFormsIdentity, содержащий сведения о пользователе. Если для приложения настроена ClientRoleProvider, можно использовать объект ClientRolePrincipal для получения сведений о роли пользователя из службы ролей.
Вы можете получить ссылку на текущий экземпляр ClientFormsAuthenticationMembershipProvider через свойство static
Membership.Provider. Вы можете использовать ссылку поставщика членства для вызова метода ClientFormsAuthenticationMembershipProvider.ValidateUser напрямую. Кроме того, вам потребуется ссылка на поставщик членства для вызова метода Logout, который недоступен в базовом классе MembershipProvider.
Нельзя использовать класс ClientFormsAuthenticationMembershipProvider для создания, удаления или изменения сведений о членстве. Чтобы создать, удалить или изменить пользователей, необходимо изменить конфигурацию службы входа на сервере.
Конструкторы
ClientFormsAuthenticationMembershipProvider() |
Инициализирует новый экземпляр класса ClientFormsAuthenticationMembershipProvider. |
Свойства
ApplicationName |
Это свойство не используется этим классом. |
Description |
Получает краткое понятное описание, подходящее для отображения в средствах администрирования или других пользовательских интерфейсах (UIs). (Унаследовано от ProviderBase) |
EnablePasswordReset |
Это свойство не используется этим классом. |
EnablePasswordRetrieval |
Это свойство не используется этим классом. |
MaxInvalidPasswordAttempts |
Это свойство не используется этим классом. |
MinRequiredNonAlphanumericCharacters |
Это свойство не используется этим классом. |
MinRequiredPasswordLength |
Это свойство не используется этим классом. |
Name |
Возвращает понятное имя, используемое для ссылки на поставщика во время настройки. (Унаследовано от ProviderBase) |
PasswordAttemptWindow |
Это свойство не используется этим классом. |
PasswordFormat |
Это свойство не используется этим классом. |
PasswordStrengthRegularExpression |
Это свойство не используется этим классом. |
RequiresQuestionAndAnswer |
Это свойство не используется этим классом. |
RequiresUniqueEmail |
Это свойство не используется этим классом. |
ServiceUri |
Возвращает или задает универсальный код ресурса (URI) службы проверки подлинности. |
Методы
ChangePassword(String, String, String) |
Этот метод не используется этим классом. |
ChangePasswordQuestionAndAnswer(String, String, String, String) |
Этот метод не используется этим классом. |
CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Этот метод не используется этим классом. |
DecryptPassword(Byte[]) |
Расшифровывает зашифрованный пароль. (Унаследовано от MembershipProvider) |
DeleteUser(String, Boolean) |
Этот метод не используется этим классом. |
EncryptPassword(Byte[]) |
Шифрует пароль. (Унаследовано от MembershipProvider) |
EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Шифрует указанный пароль с помощью указанного режима совместимости паролей. (Унаследовано от MembershipProvider) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FindUsersByEmail(String, Int32, Int32, Int32) |
Этот метод не используется этим классом. |
FindUsersByName(String, Int32, Int32, Int32) |
Этот метод не используется этим классом. |
GetAllUsers(Int32, Int32, Int32) |
Этот метод не используется этим классом. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetNumberOfUsersOnline() |
Этот метод не используется этим классом. |
GetPassword(String, String) |
Этот метод не используется этим классом. |
GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
GetUser(Object, Boolean) |
Этот метод не используется этим классом. |
GetUser(String, Boolean) |
Этот метод не используется этим классом. |
GetUserNameByEmail(String) |
Этот метод не используется этим классом. |
Initialize(String, NameValueCollection) |
Инициализирует поставщика. |
Logout() |
Выходит из системы пользователя. |
MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
OnValidatingPassword(ValidatePasswordEventArgs) |
Вызывает событие ValidatingPassword, если был определен обработчик событий. (Унаследовано от MembershipProvider) |
ResetPassword(String, String) |
Этот метод не используется этим классом. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
UnlockUser(String) |
Этот метод не используется этим классом. |
UpdateUser(MembershipUser) |
Этот метод не используется этим классом. |
ValidateUser(String, String) |
Выполняет проверку подлинности пользователя с помощью указанного имени пользователя и пароля. |
ValidateUser(String, String, Boolean) |
Проверяет подлинность пользователя с помощью указанного имени пользователя и пароля, при необходимости сохраняя хэш пароля в локальном кэше данных. |
ValidateUser(String, String, String) |
Проверяет подлинность пользователя в указанном URI службы с помощью указанного имени пользователя и пароля. |
События
UserValidated |
Происходит при проверке пользователя. |
ValidatingPassword |
Происходит при создании пользователя, изменении пароля или сбросе пароля. (Унаследовано от MembershipProvider) |