Описание
WebSecurity Объект обеспечивает безопасность и аутентификацию для приложений ASP.NET Web Pages.
С целью WebSecurity вы можете создавать учетные записи пользователей, логин и пользователь выхода из системы, сбросить или изменить пароли, и многое другие.
WebSecurity Object Reference - Свойства
свойства | Описание |
---|---|
CurrentUserId | Возвращает идентификатор для текущего пользователя |
CurrentUserName | Возвращает имя текущего пользователя |
HasUserId | Возвращает истину, если текущий имеет идентификатор пользователя |
IsAuthenticated | Возвращает истину, если текущий пользователь вошел в систему |
WebSecurity Object Reference - Методы
метод | Описание |
---|---|
ChangePassword() | Изменение пароля для пользователя |
ConfirmAccount() | Подтверждение учетной записи с помощью маркеров подтверждения |
CreateAccount() | Создает новую учетную запись пользователя |
CreateUserAndAccount() | Создает новую учетную запись пользователя |
GeneratePasswordResetToken() | Создает маркер, который может быть передан как пользователь по электронной почте |
GetCreateDate() | Возвращает время создания указанного членства |
GetPasswordChangeDate() | Возвращает дату и время, когда пароль был изменен |
GetUserId() | Получает идентификатор пользователя от имени пользователя |
InitializeDatabaseConnection() | Инициализация системы WebSecurity (database) |
IsConfirmed() | Проверяет, является ли пользователь подтвердил |
IsCurrentUser() | Проверяет, является ли текущий пользователь совпадает с именем пользователя |
Login() | Регистрирует пользователя в, установив маркер в куки |
Logout() | Регистрирует пользователь путем удаления маркеров куков |
RequireAuthenticatedUser() | Выход страницы, если пользователь не авторизованный пользователь |
RequireRoles() | Выход страницы, если пользователь не является частью указанных ролей |
RequireUser() | Выход страницы, если пользователь не указанный пользователь |
ResetPassword() | Изменение пароля пользователя с помощью маркеров |
UserExists() | Проверяет, является ли данный пользователь существует |
Технические данные
имя | Стоимость |
---|---|
Класс | WebMatrix.WebData.WebSecurity |
Пространство имен | WebMatrix.WebData |
сборочный | WebMatrix.WebData.dll |
Инициализация базы данных WebSecurity
Вы должны создать или инициализировать базу данных WebSecurity, прежде чем использовать объект WebSecurity в вашем коде.
В корневом каталоге вашего веб, создать страницу (or edit the page ) под названием _AppStart.cshtml.
Вставьте следующий код в файл:
_AppStart.cshtml
@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile",
"UserId", "Email", true);
}
Приведенный выше код будет выполняться каждый раз , когда веб - сайт (application) начинается. Он инициализирует базу данных WebSecurity.
«Пользователи» это имя базы данных WebSecurity (Users.sdf) .
«UserProfile» это имя таблицы базы данных , которая содержит информацию о профиле пользователя.
«UserId» является именем столбца, содержащего идентификаторы пользователей (primary key) .
«Электронная почта» это имя столбца , который содержит имена пользователей.
Последний параметр является истинным логическое значение , указывающее , что профиль пользователя и членство таблицы должны быть созданы автоматически , если они не существуют, иначе ложь.
Хотя верно указывает на автоматическое создание таблиц базы данных, сама база данных не будет создана автоматически. Оно должно существовать.
База данных WebSecurity
Таблица UserProfile содержит одну запись для каждого пользователя, с идентификатором пользователя (primary key) и имя пользователя (email) :
Идентификатор пользователя | Эл. адрес |
---|---|
1 | [email protected] |
2 | [email protected] |
3 | [email protected] |
В таблице членства будет содержать членскую информацию о том, когда был создан пользователь , и если (and when) членство было подтверждено.
Так же, как это (some columns are not shown) :
пользователь Я бы | Создайте Дата | подтверждение знак | Является подтвердил | Последний пароль недостаточность | пароль | пароль + Изменить |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | НОЛЬ | Правда | НОЛЬ | AFNQhWfy .... | 12.04.2012 16:12:17 |
Примечание: Если вы хотите, чтобы увидеть все столбцы и все содержимое, откройте базу данных с WebMatrix и заглянуть внутрь каждой таблицы.
Простая конфигурация членства
Вы можете получить ошибки с помощью объекта WebSecurity, если ваш сайт не настроен для использования ASP.NET Web Pages системы членства SimpleMembership.
Это может произойти, если сервер хостинг-провайдера настроен так, иначе, чем локальный сервер. Чтобы это исправить, добавьте следующий элемент в файле Web.config сайта:
<appSettings>
<add key="enableSimpleMembership" value="true" />
</appSettings>