Sécurité des pages Web
Pages Web ASP.NET - Objet WebSecurity
Description
Objet WebSecurity fourni par ASP Applications de pages Web .NET.
Avec l'objet WebSecurity, vous pouvez créer des comptes d'utilisateurs, vous connecter et vous déconnecter des utilisateurs, réinitialiser ou modifier les mots de passe et bien d'autres fonctions liées à la sécurité.
Manuel de référence des objets WebSecurity - Propriétés
属性 | 描述 |
---|---|
CurrentUserId | 获取当前登录用户的 ID。 |
CurrentUserName | 获取当前登录用户的名称。 |
HasUserId | 如果当前有用户 ID,则返回 true。 |
IsAuthenticated | 如果当前用户是登录的,则返回 true。 |
Manuel de référence des objets WebSecurity - Méthodes
方法 | 描述 |
---|---|
ChangePassword() | 为指定的用户更改密码。 |
ConfirmAccount() | 使用帐户确认令牌确认帐户。 |
CreateAccount() | 创建一个新的用户帐户。 |
CreateUserAndAccount() | 创建一个新的用户帐户。 |
GeneratePasswordResetToken() | 生成一个密码重置令牌,可以在电子邮件中发送给用户以便用户可以重设密码。 |
GetCreateDate() | 获取指定会员创建的时间。 |
GetPasswordChangeDate() | 获取密码变更的日期和时间。 |
GetUserId() | 根据用户名称获取用户 ID。 |
InitializeDatabaseConnection() | 初始化 WebSecurity 系统(数据库)。 |
IsConfirmed() | 检查用户是否已被确认。如果已确认,则返回 true。(例如,可通过电子邮件进行确认。) |
IsCurrentUser() | 检查当前用户的名称是否与指定用户名匹配。如果匹配,则返回 true。 |
Login() | 设置身份验证令牌,登录用户。 |
Logout() | 移除身份验证令牌,注销用户。 |
RequireAuthenticatedUser() | 如果用户未通过身份验证,则设置 HTTP 状态为 401(未经授权)。 |
RequireRoles() | 如果当前用户不是指定角色的成员,则设置 HTTP 状态为 401(未经授权)。 |
RequireUser() | 如果当前用户不是指定用户名的用户,则设置 HTTP 状态为 401(未经授权)。 |
ResetPassword() | 如果密码重置令牌是有效的,改变用户的密码为新密码。 |
UserExists() | 检查指定的用户是否存在。 |
Données techniques
名称 | 值 |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Initialisation de la base de données WebSecurity
Si vous souhaitez utiliser des objets WebSecurity dans votre code, vous devez d'abord créer ou initialiser la base de données WebSecurity.
Dans votre répertoire racine Web, créez une page appelée _AppStart.cshtml (ou modifiez directement la page si elle existe déjà).
Copiez le code suivant dans le fichier :
_AppStart.cshtml
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true);
}
Le code ci-dessus s'exécutera à chaque démarrage du site Web (application). Il initialise la base de données WebSecurity.
"Users" est le nom de la base de données WebSecurity (Users.sdf).
"UserProfile" est le nom de la table de base de données qui contient les informations de profil utilisateur.
"UserId" est le nom de la colonne contenant l'ID utilisateur (clé primaire).
"Email" est le nom de la colonne contenant le nom d'utilisateur.
Le dernier paramètre true est une valeur booléenne, indiquant que si la table de configuration utilisateur et la table d'adhésion n'existent pas, les tables seront automatiquement créées. Si vous ne souhaitez pas créer automatiquement le tableau, vous devez définir le paramètre sur false.
Bien
signifie créer automatiquement la base de données table , mais la base de données ne sera pas automatiquement créée. La base de données doit donc exister. |
La table
UserId | |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
de la base de données WebSecurity crée et enregistre un enregistrement pour chaque utilisateur. ID utilisateur (clé primaire) et nom d'utilisateur (e-mail) :
Adhésion
Le tableau contient des informations sur le membre, telles que la date de création de l'utilisateur, si le membre a été authentifié, et ce qu'est le membre lorsqu'il est certifié, etc.User Id | Create Date | Confirmation Token | Is Confirmed | Last Password Failure | Password | Password Change |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
User<🎜>Id th> | Créer<🎜>Date | Confirmation<🎜>Jeton | Est<🎜>Confirmé | Dernier<🎜>Mot de passe<🎜 >Échec | Mot de passe | Mot de passe<🎜>Changement |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12 :17 | NULL | Vrai | NULL | AFNQhWfy.... | 12.04.2012 16 : 12 : 17 |
Remarque : si vous souhaitez voir toutes les colonnes et leur contenu, veuillez ouvrir la base de données et examiner chaque tableau à l'intérieur.
Configuration d'adhésion simple
Lorsque vous utilisez l'objet WebSecurity, si votre site n'est pas configuré pour utiliser le système d'adhésion ASP.NET Web Pages SimpleMembership, il peut signaler une erreur.
Des erreurs peuvent également survenir si le serveur du fournisseur d'hébergement est configuré différemment de votre serveur local. Pour résoudre ce problème, ajoutez l'élément suivant au fichier Web.config de votre site Web :
<add key="enableSimpleMembership" value="true" /> 🎜></appSettings>