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>
Комментарии
Примечание
ASP.NET поставщики членства заменены ASP.NET Identity. Мы настоятельно рекомендуем обновить приложения для использования платформы ASP.NET Identity вместо поставщиков членства.
Этот класс используется классами 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 с именем AspNetSqlMembershipProvider
, который подключается к экземпляру SQL Server 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 |
Возвращает краткое, понятное описание, подходящее для отображения в инструментах администрирования или других пользовательских интерфейсах (UI). (Унаследовано от 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[]) |
Шифрует пароль. (Унаследовано от MembershipProvider) |
EncryptPassword(Byte[], MembershipPasswordCompatibilityMode) |
Шифрует заданный пароль с использованием заданного режима совместимости паролей. (Унаследовано от 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) |