Membership Membership Membership Membership Class

Definition

Проверяет учетные данные пользователя и управляет параметрами пользователей. Validates user credentials and manages user settings. Этот класс не наследуется. This class cannot be inherited.

public ref class Membership abstract sealed
public static class Membership
type Membership = class
Public Class Membership
Inheritance
MembershipMembershipMembershipMembership

Examples

В следующем примере кода показана страница входа для приложения ASP.NET, настроены на использование проверки подлинности форм и членства ASP.NET.The following code example shows the login page for an ASP.NET application configured to use forms authentication and ASP.NET membership. Если учетные данные пользователя недопустимы, отображается сообщение для пользователя.If the supplied user credentials are invalid, a message is displayed to the user. В противном случае пользователь перенаправляется на первоначально запрошенный URL-адрес с помощью RedirectFromLoginPage метод.Otherwise, the user is redirected to the originally requested URL using the RedirectFromLoginPage method.

Примечание

Элементы управления ASP.NET (Login, LoginView, LoginStatus, LoginName, и PasswordRecovery) инкапсулируют практически всю логику, необходимую для запроса учетных данных пользователей и проверки учетных данных в системе членства и может быть использовать вместо программный проверки с помощью Membership класса.The ASP.NET login controls (Login, LoginView, LoginStatus, LoginName, and PasswordRecovery) encapsulate virtually all of the logic required to prompt users for credentials and validate the credentials in the membership system and can be used in place of programmatic checking using the Membership class.

Важно!

В этом примере содержит текстовое поле ввода данных пользователя, который является потенциальной угрозой безопасности.This example contains a text box that accepts user input, which is a potential security threat. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.For more information, see Script Exploits Overview.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and try again.";
}


</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Public Sub Login_OnClick(sender As Object, args As  EventArgs)

   If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
   Else
     Msg.Text = "Login failed. Please check your user name and password and try again."
   End If

End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

</body>
</html>

Remarks

Membership Класс используется в приложениях ASP.NET для проверки учетных данных пользователя и управление параметрами пользователя, такие как пароли и адреса электронной почты.The Membership class is used in ASP.NET applications to validate user credentials and manage user settings such as passwords and email addresses. Membership Класс может использоваться сама по себе или в сочетании с FormsAuthentication для создания всей системы, для проверки подлинности пользователей веб-приложения или узла.The Membership class can be used on its own, or in conjunction with the FormsAuthentication to create a complete system for authenticating users of a Web application or site. Login Управления инкапсулирует Membership класс, предоставляющий удобный механизм для проверки пользователей.The Login control encapsulates the Membership class to provide a convenient mechanism for validating users.

Примечание

Если вы не знакомы с функциями членства ASP.NET, см. в разделе Знакомство с членством перед продолжением.If you are not familiar with the membership features of ASP.NET, see Introduction to Membership before continuing. Список других разделов, связанных с членством, см. в разделе Управление пользователями с использованием членства.For a list of other topics related to membership, see Managing Users by Using Membership.

Membership Класс предоставляет средства для:The Membership class provides facilities for:

  • Создание новых пользователей.Creating new users.

  • Хранение сведений о членстве (имена пользователей, пароли, адреса электронной почты и данные поддержки), в Microsoft SQL Server или в альтернативное хранилище данных.Storing membership information (user names, passwords, email addresses, and supporting data) in Microsoft SQL Server or in an alternative data store.

  • Аутентификация пользователей, посещающих веб-узла.Authenticating users who visit your site. Вы можете проверять подлинность пользователей программным способом или воспользоваться Login элементу управления создавать полную систему проверки подлинности требует минимального кода или без.You can authenticate users programmatically, or you can use the Login control to create a complete authentication system that requires little or no code.

  • Управление паролями, который включает в себя создание, изменение, извлечение и их сброс и так далее.Managing passwords, which includes creating, changing, retrieving, and resetting them, and so on. При необходимости можно настроить членства ASP.NET требуется вопрос и ответ пароля для проверки подлинности запросов сброса или извлечения пароля для пользователей, которые вы забыли свой пароль.You can optionally configure ASP.NET membership to require a password question and answer to authenticate password reset or retrieval requests for users that have forgotten their password.

Несмотря на то, что членство ASP.NET — самостоятельная функция в ASP.NET для проверки подлинности, его можно интегрировать с управлением ролями ASP.NET для предоставления службы проверки подлинности для веб-узла.Although ASP.NET membership is a self-standing feature in ASP.NET For authentication, it can be integrated with ASP.NET role management to provide authorization services for your site. Членство можно интегрировать с пользователем ASP.NET System.Web.Profile для настройки конкретного приложения, которое можно подогнать отдельным пользователям.Membership can also be integrated with the ASP.NET user System.Web.Profile to provide application-specific customization that can be tailored to individual users. Дополнительные сведения см. в разделе основные сведения об управлении роли и Общие сведения о свойствах профиля ASP.NET.For details, see Understanding Role Management and ASP.NET Profile Properties Overview.

Membership Класс зависит от поставщиков членства для связи с источником данных.The Membership class relies on membership providers to communicate with a data source. .NET Framework включает SqlMembershipProvider, который сохраняет сведения о пользователе в базе данных Microsoft SQL Server и ActiveDirectoryMembershipProvider, который позволяет хранить сведения о пользователе на сервере Active Directory или Active Directory Application Mode (ADAM).The .NET Framework includes a SqlMembershipProvider, which stores user information in a Microsoft SQL Server database, and an ActiveDirectoryMembershipProvider, which enables you to store user information on an Active Directory or Active Directory Application Mode (ADAM) server. Вы также можете реализовать собственного поставщика членства для взаимодействия с альтернативным источником данных, могут использоваться Membership класса.You can also implement a custom membership provider to communicate with an alternative data source that can be used by the Membership class. Пользовательские поставщики участия наследовать MembershipProvider абстрактного класса.Custom membership providers inherit the MembershipProvider abstract class. Дополнительные сведения см. в разделе реализация поставщика членства.For more information, see Implementing a Membership Provider.

По умолчанию членства ASP.NET включена для всех приложений ASP.NET.By default, ASP.NET membership is enabled for all ASP.NET applications. Поставщик членства по умолчанию SqlMembershipProvider и указывается в конфигурации компьютера с именем AspNetSqlProvider.The default membership provider is the SqlMembershipProvider and is specified in the machine configuration with the name AspNetSqlProvider. Экземпляр по умолчанию SqlMembershipProvider настроен для подключения к локальному экземпляру Microsoft SQL Server.The default instance of the SqlMembershipProvider is configured to connect to a local instance of Microsoft SQL Server.

Можно изменить параметры по умолчанию для указания SqlMembershipProvider отличное от AspNetSqlProvider в качестве поставщика по умолчанию или указать экземпляр пользовательского поставщика в качестве поставщика по умолчанию для приложения ASP.NET в файле Web.config.You can modify the default settings to specify a SqlMembershipProvider other than the AspNetSqlProvider instance as the default provider, or specify an instance of a custom provider as the default provider for your ASP.NET application using the Web.config file. Можно указать конфигурацию членства ASP.NET для веб-приложения с помощью раздела конфигурации в файле Web.config.You can specify the ASP.NET membership configuration for your Web application using the configuration section in the Web.config file. Можно использовать providers подразделе раздела, чтобы указать поставщика членства, отличного от одного из поставщиков по умолчанию.You can use the providers subsection of the section to specify a membership provider other than one of the default providers. Например, в следующем разделе удаляет поставщиков членства по умолчанию из текущей конфигурации приложения и добавляет новый поставщик с именем SqlProvider , подключается к экземпляру SQL Server с именем AspSqlServer.For example, the following section removes the default membership providers from the current application configuration and adds a new provider with a name of SqlProvider that connects to a SQL Server instance named AspSqlServer.

<configuration>  
  <connectionStrings>  
    <add name="SqlServices" connectionString="Data Source=AspSqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />  
  </connectionStrings>  
  <system.web>  
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">  
      <providers>  
        <remove name="AspNetSqlProvider" />  
        <add name="SqlProvider"  
          type="System.Web.Security.SqlMembershipProvider"  
          connectionStringName="SqlServices"  
          enablePasswordRetrieval="false"  
          enablePasswordReset="true"  
          requiresQuestionAndAnswer="true"  
          passwordFormat="Hashed"  
          applicationName="/" />  
      </providers>  
    </membership>  
  </system.web>  
</configuration>  

Properties

ApplicationName ApplicationName ApplicationName ApplicationName

Возвращает или задает имя приложения. Gets or sets the name of the application.

EnablePasswordReset EnablePasswordReset EnablePasswordReset EnablePasswordReset

Возвращает значение, показывающее, настроена ли в текущем поставщике участия возможность сброса пользователями собственных паролей. Gets a value indicating whether the current membership provider is configured to allow users to reset their passwords.

EnablePasswordRetrieval EnablePasswordRetrieval EnablePasswordRetrieval EnablePasswordRetrieval

Возвращает значение, показывающее, настроена ли в текущем поставщике участия возможность извлечения пользователями собственных паролей. Gets a value indicating whether the current membership provider is configured to allow users to retrieve their passwords.

HashAlgorithmType HashAlgorithmType HashAlgorithmType HashAlgorithmType

Идентификатор алгоритма, использующийся для хэширования паролей. The identifier of the algorithm used to hash passwords.

MaxInvalidPasswordAttempts MaxInvalidPasswordAttempts MaxInvalidPasswordAttempts MaxInvalidPasswordAttempts

Получает количество попыток ввода недействительного пароля или контрольного ответа, по достижении которого авторизованный пользователь блокируется. Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out.

MinRequiredNonAlphanumericCharacters MinRequiredNonAlphanumericCharacters MinRequiredNonAlphanumericCharacters MinRequiredNonAlphanumericCharacters

Получает минимальное количество специальных символов, которые должны присутствовать в допустимом пароле. Gets the minimum number of special characters that must be present in a valid password.

MinRequiredPasswordLength MinRequiredPasswordLength MinRequiredPasswordLength MinRequiredPasswordLength

Получает минимальную длину пароля. Gets the minimum length required for a password.

PasswordAttemptWindow PasswordAttemptWindow PasswordAttemptWindow PasswordAttemptWindow

Возвращает интервал времени, которое должно пройти между отслеживанием последовательных попыток ввода недействительного пароля или контрольного ответа. Gets the time window between which consecutive failed attempts to provide a valid password or password answer are tracked.

PasswordStrengthRegularExpression PasswordStrengthRegularExpression PasswordStrengthRegularExpression PasswordStrengthRegularExpression

Возвращает регулярное выражение, используемое для обработки пароля. Gets the regular expression used to evaluate a password.

Provider Provider Provider Provider

Возвращает ссылку на поставщика участия по умолчанию для приложения. Gets a reference to the default membership provider for the application.

Providers Providers Providers Providers

Возвращает коллекцию поставщиков участия для приложения ASP.NET. Gets a collection of the membership providers for the ASP.NET application.

RequiresQuestionAndAnswer RequiresQuestionAndAnswer RequiresQuestionAndAnswer RequiresQuestionAndAnswer

Возвращает значение, показывающее, настроен ли поставщик участия по умолчанию, чтобы запрашивать у пользователя ответ на контрольный вопрос для изменения или извлечения пароля. Gets a value indicating whether the default membership provider requires the user to answer a password question for password reset and retrieval.

UserIsOnlineTimeWindow UserIsOnlineTimeWindow UserIsOnlineTimeWindow UserIsOnlineTimeWindow

Задает время в минутах после отметки с датой и временем последних действий для учетной записи пользователя, в течение которых считается, что пользователь находится в оперативном режиме. Specifies the number of minutes after the last-activity date/time stamp for a user during which the user is considered online.

Methods

CreateUser(String, String) CreateUser(String, String) CreateUser(String, String) CreateUser(String, String)

Добавляет нового пользователя в хранилище данных. Adds a new user to the data store.

CreateUser(String, String, String) CreateUser(String, String, String) CreateUser(String, String, String) CreateUser(String, String, String)

Добавляет в хранилище данных нового пользователя с указанным адресом электронной почты. Adds a new user with a specified email address to the data store.

CreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, MembershipCreateStatus)

Добавляет в хранилище данных нового пользователя со значениями указанного свойства и возвращает параметр состояния, который сообщает об успешном создании пользователя или содержит причину, по которой не удалось создать пользователя. Adds a new user with specified property values to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed.

CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus)

Добавляет в хранилище данных нового пользователя со значениями указанного свойства и уникальным идентификатором, и возвращает параметр состояния, который сообщает об успешном создании пользователя или содержит причину, по которой не удалось создать пользователя. Adds a new user with specified property values and a unique identifier to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed.

DeleteUser(String) DeleteUser(String) DeleteUser(String) DeleteUser(String)

Удаляет пользователя и любые связанные с ним данные из базы данных. Deletes a user and any related user data from the database.

DeleteUser(String, Boolean) DeleteUser(String, Boolean) DeleteUser(String, Boolean) DeleteUser(String, Boolean)

Удаляет пользователя из базы данных. Deletes a user from the database.

FindUsersByEmail(String, Int32, Int32, Int32) FindUsersByEmail(String, Int32, Int32, Int32) FindUsersByEmail(String, Int32, Int32, Int32) FindUsersByEmail(String, Int32, Int32, Int32)

Возвращает коллекцию пользователей членства на странице данных, где адрес электронной почты содержит часть, совпадающую с указанным значением. Gets a collection of membership users, in a page of data, where the email address contains the specified email address to match.

FindUsersByEmail(String) FindUsersByEmail(String) FindUsersByEmail(String) FindUsersByEmail(String)

Возвращает коллекцию авторизованных пользователей, адреса электронной почты которых соответствуют указанному адресу электронной почты. Gets a collection of membership users where the email address contains the specified email address to match.

FindUsersByName(String) FindUsersByName(String) FindUsersByName(String) FindUsersByName(String)

Возвращает коллекцию авторизованных пользователей, имена которых соответствуют указанному имени. Gets a collection of membership users where the user name contains the specified user name to match.

FindUsersByName(String, Int32, Int32, Int32) FindUsersByName(String, Int32, Int32, Int32) FindUsersByName(String, Int32, Int32, Int32) FindUsersByName(String, Int32, Int32, Int32)

Возвращает коллекцию пользователей членства на странице данных, где имя пользователя совпадает с указанным значением. Gets a collection of membership users, in a page of data, where the user name contains the specified user name to match.

GeneratePassword(Int32, Int32) GeneratePassword(Int32, Int32) GeneratePassword(Int32, Int32) GeneratePassword(Int32, Int32)

Формирует случайный пароль указанной длины. Generates a random password of the specified length.

GetAllUsers() GetAllUsers() GetAllUsers() GetAllUsers()

Возвращает коллекцию всех пользователей в базе данных. Gets a collection of all the users in the database.

GetAllUsers(Int32, Int32, Int32) GetAllUsers(Int32, Int32, Int32) GetAllUsers(Int32, Int32, Int32) GetAllUsers(Int32, Int32, Int32)

Возвращает коллекцию всех пользователей в базе данных на странице данных. Gets a collection of all the users in the database in pages of data.

GetNumberOfUsersOnline() GetNumberOfUsersOnline() GetNumberOfUsersOnline() GetNumberOfUsersOnline()

Получает количество пользователей, осуществляющих текущий доступ к приложению. Gets the number of users currently accessing an application.

GetUser(String, Boolean) GetUser(String, Boolean) GetUser(String, Boolean) GetUser(String, Boolean)

Возвращает из источника данных информацию для указанного пользователя членства. Gets the information from the data source for the specified membership user. Обновляет отметку о дате и времени последней операции пользователя, если это указано. Updates the last-activity date/time stamp for the user, if specified.

GetUser(Object, Boolean) GetUser(Object, Boolean) GetUser(Object, Boolean) GetUser(Object, Boolean)

Возвращает информацию из источника данных для пользователя членства, связанного с определенным уникальным идентификатором. Gets the information from the data source for the membership user associated with the specified unique identifier. Обновляет отметку о дате и времени последней операции пользователя, если это указано. Updates the last-activity date/time stamp for the user, if specified.

GetUser(String) GetUser(String) GetUser(String) GetUser(String)

Возвращает из источника данных информацию для указанного пользователя членства. Gets the information from the data source for the specified membership user.

GetUser(Boolean) GetUser(Boolean) GetUser(Boolean) GetUser(Boolean)

Возвращает информацию из источника данных для текущего вошедшего пользователя членства. Gets the information from the data source for the current logged-on membership user. Обновляет отметку о времени и дате последней активности для текущего вошедшего пользователя, если это указано. Updates the last-activity date/time stamp for the current logged-on membership user, if specified.

GetUser() GetUser() GetUser() GetUser()

Возвращает информацию из источника данных и обновляет отметку о времени и дате последней операции для текущего пользователя членства, вошедшего в систему. Gets the information from the data source and updates the last-activity date/time stamp for the current logged-on membership user.

GetUser(Object) GetUser(Object) GetUser(Object) GetUser(Object)

Возвращает информацию из источника данных для пользователя членства, связанного с определенным уникальным идентификатором. Gets the information from the data source for the membership user associated with the specified unique identifier.

GetUserNameByEmail(String) GetUserNameByEmail(String) GetUserNameByEmail(String) GetUserNameByEmail(String)

Возвращает имя пользователя, для которого адрес электронной почты совпадает с указанным адресом электронной почты. Gets a user name where the email address for the user matches the specified email address.

UpdateUser(MembershipUser) UpdateUser(MembershipUser) UpdateUser(MembershipUser) UpdateUser(MembershipUser)

Обновляет базу данных данными для указанного пользователя. Updates the database with the information for the specified user.

ValidateUser(String, String) ValidateUser(String, String) ValidateUser(String, String) ValidateUser(String, String)

Проверяет допустимость предоставленного имени пользователя и пароля. Verifies that the supplied user name and password are valid.

Events

ValidatingPassword ValidatingPassword ValidatingPassword ValidatingPassword

Происходит при создании пользователя, изменении пароля или сбросе пароля. Occurs when a user is created, a password is changed, or a password is reset.

Applies to

See Also