ASPNETDB 表和视图(2) 用户成员资格和角色管理 表
来源:互联网 发布:meta数据 编辑:程序博客网 时间:2024/05/14 17:53
用户成员资格表
相信各位兄弟看了上面这张表,对大部分字段的意思都已了然于胸了。
老小弟在此只为大家理一理剩下的“小部分字段”:
- PasswordFormat:密码格式?其实是密码加密方式,其.NET类型为MembershipPasswordFormat枚举。
下面列出 MembershipPasswordFormat 枚举的3个值:
Clear 不加密;
Encrypted 使用web.config中machineKey指定的方法加密/解密;
Hashed 使用单向 Salted 哈希技术进行加密(注意是单向加密,所以密码是无法检索的)。
PasswordSalt:上面提到单向 Salted 哈希技术在加密时会随机生成一个Salt,该字段就是存放这个Salt值的 。 - MobilePIN:手机PIN码,现在还不知道有什么用。参见基本用户表(aspnet_Users)中的MobileAlias字段。
- IsApproved:微软的定义是:表示是否可以对成员资格用户进行身份验证。
我的理解是:是否对用户启用成员资格身份验证,在设置为不启用的情况下(其实就是禁用),
即使用户提供了正确的用户名和密码也是无法成功登录的。 - FailedPasswordAttemptCount:连续登录失败的次数(用户名正确,密码无效),
和web.config中设置的maxInvalidPasswordAttempts值相比较决定是否锁定用户成员资格帐户。
FailedPasswordAttemptWindowStart:记录首次登录失败的时间。 - FailedPasswordAnswerAttemptCount:连续回答密码问题失败的次数。
FailedPasswordAnswerAttemptWindowStart :记录首次失败的时间,
和web.config中设置的passwordAttemptWindow值相比较决定是否锁定用户成员资格帐户。
下面再贴出web.config中有关用户成员资格的片段,
所有以颜色Fuchsia标注的都是SqlMembershipProvider的属性。
所有以颜色Fuchsia标注的都是SqlMembershipProvider的属性。
<system.web>
...
<machineKey
validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
validation="SHA1"
/>
...
<connectionStrings>
<add connectionString="..."/>
</connectionStrings>
...
<membership defaultProvider="SqlSrvMembershipProvider">
<providers>
<add
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlSrvConnectionString"
applicationName="WebShop"
commandTimeout="30"
description="SqlSrvMembershipProvider"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordStrengthRegularExpression=""/>
</providers>
</membership>
...
</system.web>
...
<machineKey
validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
validation="SHA1"
/>
...
<connectionStrings>
<add connectionString="..."/>
</connectionStrings>
...
<membership defaultProvider="SqlSrvMembershipProvider">
<providers>
<add
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlSrvConnectionString"
applicationName="WebShop"
commandTimeout="30"
description="SqlSrvMembershipProvider"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="10"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordStrengthRegularExpression=""/>
</providers>
</membership>
...
</system.web>
角色表
用户与角色关联表
上面两个有关角色管理的表,更是一目了然。如果要多说几句的话,那就是通过
aspnet_UsersInRoles这个关联表把用户表和角色表之间的多对多关系转化为两个一对多的关系,
而这正是关系数据库所要求的。
特别注意,如果你要为你的用户添加角色管理,在web.config中必须显式启用(enabled="true"),
在默认情况下,用户角色是不启用。
web.config片段:
<system.web>
...
<roleManager enabled="true">
...
<roleManager/>
...
</system.web>
- ASPNETDB 表和视图(2) 用户成员资格和角色管理 表
- ASPNETDB 存储过程(2) 成员资格管理部分
- asp.net 2.0教程 成员资格和角色管理
- asp.net 2.0教程 成员资格和角色管理
- asp.net 2.0教程 成员资格和角色管理
- asp.net成员资格与角色管理使用和配置
- ASPNETDB 存储过程: 成员资格管理部分
- ASPNETDB 表和视图(3) 个性化用户配置、页面个性化设置 表 和视图
- [.NET 基于角色安全性验证] 之四:ASP.NET 2.0 成员资格和角色管理授权
- [.NET 基于角色安全性验证] 之四:ASP.NET 2.0 成员资格和角色管理授权
- [.NET 基于角色安全性验证] 之四:ASP.NET 2.0 成员资格和角色管理授权
- 成员资格管理与角色管理中类的一些方法 和例子
- 关于自定义成员资格和角色管理授权提供程序的问题
- 温故知新ASP.NET 2.0(C#)(6) - Membership&RoleManager(成员资格和角色管理)
- ASP.NET 2.0的成员资格和角色管理器
- 启用asp2.0用户成员和角色管理
- 用户角色管理和vs2005Login控件 (2)
- ASPNETDB 数据库关系图、表和视图(1) 基本表和独立表
- Protege新手入门(基础篇)
- 网管必读 解读无线网络七大安全困惑
- VC使用CRT调试功能来检测内存泄漏
- 两种比较典型的ASP木马防范方法
- javascript中的正规表达式(2)
- ASPNETDB 表和视图(2) 用户成员资格和角色管理 表
- 两种比较典型的ASP木马防范方法2
- 成功管理的根基 团队项目管理101招
- EWB的使用
- ASPNETDB 表和视图(3) 个性化用户配置、页面个性化设置 表 和视图
- 从Vc6迁移到Vs2005
- 让Win XP不再出现内存读写错误
- ASPNETDB 存储过程(1) 基本及杂类
- javascript中的正规表达式(1)