SqlMembershipProvider Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Управляет хранилищем сведений о членстве для приложения ASP.NET в базе данных SQL Server.
public ref class SqlMembershipProvider : System::Web::Security::MembershipProvider
public class SqlMembershipProvider : System.Web.Security.MembershipProvider
type SqlMembershipProvider = class
inherit MembershipProvider
Public Class SqlMembershipProvider
Inherits MembershipProvider
- Наследование
Примеры
В следующем примере кода показан файл Web.config для приложения ASP.NET, настроенного для использования SqlMembershipProvider.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="login.aspx"
name=".ASPXFORMSAUTH" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
<membership defaultProvider="SqlProvider"
userIsOnlineTimeWindow="15">
<providers>
<add
name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
applicationName="MyApplication"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10" />
</providers>
</membership>
</system.web>
</configuration>
Комментарии
Note
поставщики членства ASP.NET заменены ASP.NET Identity. Настоятельно рекомендуется обновлять приложения для использования платформы удостоверений ASP.NET вместо поставщиков членства.
Этот класс используется классами Membership и MembershipUser для предоставления служб членства для приложения ASP.NET с помощью базы данных SQL Server. Нельзя использовать SqlMembershipProvider без SQL Server. Если на компьютере установлено SQL Server Express с именем экземпляра по умолчанию и включенным пользовательским подключением, объект SqlMembershipProvider создаст базу данных с именем aspnetdb в каталоге App_Data приложения при первом запуске приложения.
Чтобы создать базу данных вручную, запустите исполняемый файл Aspnet_regsql.exe, найденный в папке %systemroot%\Microsoft.NET\Framework\ versionNumber и укажите параметр -A m (например, aspnet_regsql.exe -A m). Созданная база данных называется Aspnetdb. Кроме того, запустите Aspnet_regsql.exe для извлечения режима конфигурации графического интерфейса и выберите настройку всех ASP.NET компонентов.
Если поставщик членства настроен с помощью строка подключения, использующего встроенную безопасность, учетная запись процесса приложения ASP.NET должна иметь права на подключение к базе данных SQL Server.
Файл Machine.config определяет экземпляр SqlMembershipProvider по умолчани SQL Server ю с именем AspNetSqlMembershipProvider, который подключается к экземпляру Express по умолчанию на локальном компьютере. Этот экземпляр поставщика можно использовать, если вы установили SQL Server Express с именем экземпляра по умолчанию или вы можете определить собственный экземпляр в файле Web.config для приложения ASP.NET.
Если для атрибута passwordCompatMode задано значение Framework40, приложение может использовать параметры хэширования и членства в шифровании, добавленные в ASP.NET 4. Однако если для атрибута passwordCompatMode задано значение Framework20, можно использовать только параметры хэширования и шифрования из ASP.NET 2.0, ASP.NET 3.5 и ASP.NET 3.5 с пакетом обновления 1 (SP1). Значение по умолчанию — Framework20. Дополнительные сведения см. в разделе MembershipPasswordCompatibilityMode.
Конструкторы
| Имя | Описание |
|---|---|
| SqlMembershipProvider() |
Инициализирует новый экземпляр класса SqlMembershipProvider. |
Свойства
| Имя | Описание |
|---|---|
| ApplicationName |
Возвращает или задает имя приложения для хранения и получения сведений о членстве. |
| Description |
Получает краткое понятное описание, подходящее для отображения в средствах администрирования или других пользовательских интерфейсах (UIs). (Унаследовано от ProviderBase) |
| EnablePasswordReset |
Возвращает значение, указывающее, настроен ли поставщик членства SQL Server, чтобы разрешить пользователям сбрасывать пароли. |
| EnablePasswordRetrieval |
Возвращает значение, указывающее, настроен ли поставщик членства SQL Server, чтобы разрешить пользователям получать пароли. |
| MaxInvalidPasswordAttempts |
Получает количество недопустимых попыток пароля или ответа на пароль, разрешенных до блокировки пользователя членства. |
| MinRequiredNonAlphanumericCharacters |
Возвращает минимальное количество специальных символов, которые должны присутствовать в допустимом пароле. |
| MinRequiredPasswordLength |
Возвращает минимальную длину, необходимую для пароля. |
| Name |
Возвращает понятное имя, используемое для ссылки на поставщика во время настройки. (Унаследовано от ProviderBase) |
| PasswordAttemptWindow |
Возвращает период времени, между которыми отслеживаются последовательные неудачные попытки предоставления допустимых ответов на пароль или пароль. |
| PasswordFormat |
Возвращает значение, указывающее формат хранения паролей в базе данных членства SQL Server. |
| PasswordStrengthRegularExpression |
Возвращает регулярное выражение, используемое для вычисления пароля. |
| RequiresQuestionAndAnswer |
Возвращает значение, указывающее, настроен ли поставщик членства в SQL Server, чтобы пользователь ответил на вопрос пароля для сброса пароля и извлечения. |
| RequiresUniqueEmail |
Возвращает значение, указывающее, настроен ли поставщик членства SQL Server для каждого имени пользователя уникальным адресом электронной почты. |
Методы
| Имя | Описание |
|---|---|
| ChangePassword(String, String, String) |
Изменяет пароль пользователя. |
| ChangePasswordQuestionAndAnswer(String, String, String, String) |
Обновляет вопрос пароля и ответ пользователя в базе данных членства SQL Server. |
| CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus) |
Добавляет нового пользователя в базу данных членства SQL Server. |
| DecryptPassword(Byte[]) |
Расшифровывает зашифрованный пароль. (Унаследовано от MembershipProvider) |
| DeleteUser(String, Boolean) |
Удаляет сведения о членстве пользователя из базы данных членства SQL Server. |
| EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Шифрует указанный пароль с помощью указанного режима совместимости паролей. (Унаследовано от MembershipProvider) |
| EncryptPassword(Byte[]) |
Шифрует пароль. (Унаследовано от MembershipProvider) |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| FindUsersByEmail(String, Int32, Int32, Int32) |
Возвращает коллекцию пользователей членства, для которых поле адреса электронной почты содержит указанный адрес электронной почты. |
| FindUsersByName(String, Int32, Int32, Int32) |
Возвращает коллекцию пользователей членства, в которой имя пользователя содержит указанное имя пользователя, соответствующее. |
| GeneratePassword() |
Создает случайный пароль, длиной по крайней мере 14 символов. |
| GetAllUsers(Int32, Int32, Int32) |
Возвращает коллекцию всех пользователей в базе данных членства SQL Server. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetNumberOfUsersOnline() |
Возвращает количество пользователей, обращаюющихся к приложению. |
| GetPassword(String, String) |
Возвращает пароль для указанного имени пользователя из базы данных членства SQL Server. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| GetUser(Object, Boolean) |
Возвращает сведения из источника данных для пользователя членства, связанного с указанным уникальным идентификатором, и обновляет последнюю метку даты и времени действия для пользователя, если указано. |
| GetUser(String, Boolean) |
Возвращает сведения из базы данных членства SQL Server для пользователя и предоставляет возможность обновить метку даты и времени последнего действия для пользователя. |
| GetUserNameByEmail(String) |
Возвращает имя пользователя, связанное с указанным адресом электронной почты. |
| Initialize(String, NameValueCollection) |
Инициализирует поставщик членства SQL Server со значениями свойств, указанными в файле конфигурации приложения ASP.NET. Этот метод не предназначен для использования непосредственно из кода. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnValidatingPassword(ValidatePasswordEventArgs) |
Вызывает событие, ValidatingPassword если был определен обработчик событий. (Унаследовано от MembershipProvider) |
| ResetPassword(String, String) |
Сбрасывает пароль пользователя на новый автоматически созданный пароль. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| UnlockUser(String) |
Очищает состояние заблокированного пользователя, чтобы пользователь смог проверить членство. |
| UpdateUser(MembershipUser) |
Обновляет сведения о пользователе в базе данных членства SQL Server. |
| ValidateUser(String, String) |
Проверяет наличие указанного имени пользователя и пароля в базе данных членства SQL Server. |
События
| Имя | Описание |
|---|---|
| ValidatingPassword |
Происходит при создании пользователя, изменении пароля или сбросе пароля. (Унаследовано от MembershipProvider) |