一、成员资格管理

1.成员资格管理模型

ASP.NET提供的成员资格管理功能,其核心是利用内置的成员库表(SQL Server)、成员资格管理API(Membership、MembershipUser等)、成员资格提供程序(SqlMembershipProvider等),实现模块化和自动化的成员资格管理模式。

2.建立成员资格支持

2-1配置建立成员资格支持

找到Visual Studio 命令提示(2010)

配置成员资格支持

完成之后成功的标志就是打开SQL Server,多了一个aspnetdb的数据库

到这里就可以使用ASP.NET 提供的自己的解决方案了。

这里面可以实现管理用户和管理角色。

当然也可以自己写,后面给出例子。点击打开链接

3.Membership类

Membership类用于验证用户凭据并管理用户设置,具有以下几个主要功能:

  • 创建和管理用户
  • 将成员资格信息存储在SQL Server或其他数据存储区中
  • 对访问站点的用户进行身份验证。可以以编程方式对用户进行身份验证,也可以使用登录控件创建一个只需很少代码或无需代码的完整身份验证系统
  • 管理密码,包括创建、更改、检索和重置密码等。可以选择配置成员资格管理功能,以要求一个密码提示问题及其答案来对忘记密码的用户的密码进行重置

Membership类的常用方法

属 性

描 述

ApplicationName

获取或设置应用程序的名称。

EnablePasswordReset

获得一个值,指示当前成员资格提供程序是否配置为允许用户重置其密码。

EnablePasswordRetrieval

获得一个值,指示当前成员资格提供程序是否配置为允许用户检索其密码。

MaxInvalidPasswordAttempts

获取锁定成员资格用户允许的无效密码或无效密码提示问题答案尝试次数。

MinRequiredNonAlphanumericCharacters

获取有效密码中必须包含的最少特殊字符数。

MinRequiredPasswordLength

获取密码所要求的最小长度。

PasswordAttemptWindow

获取在锁定成员资格用户之前允许的最大无效密码或无效密码提示问题答案尝试次数的分钟数。

PasswordStrengthRegularExpression

获取用于计算密码的正则表达式。

RequiresQuestionAndAnswer

获取一个值,该值指示默认成员资格提供程序是否要求用户在进行密码重置和检索时回答密码提示问题。

UserIsOnlineTimeWindow

指定用户在最近一次活动的日期/时间戳之后被视为联机的分钟数。

Membership类的常用方法

方 法

描 述

CreateUser

已重载。将新用户添加到数据存储区。

DeleteUser

已重载。从数据库中删除一个用户。

FindUsersByEmail

已重载。获取一个成员资格用户的集合,这些用户的电子邮件地址包含要匹配的指定电子邮件地址。

FindUsersByName

已重载。获取一个成员资格用户的集合,这些用户的用户名包含要匹配的指定用户名。

GeneratePassword

生成指定长度的随机密码。

GetAllUsers

已重载。获取数据库中用户的集合。

GetNumberOfUsersOnline

获取当前访问应用程序的用户数。

GetType

获取当前实例的Type。(从Object 继承。)

GetUser

已重载。从数据源获取成员资格用户的信息。

GetUserNameByEmail

获取一个用户名,其中该用户的电子邮件地址与指定的电子邮件地址匹配。

ReferenceEquals

确定指定的Object 实例是否是相同的实例。(从Object 继承。)

UpdateUser

用指定用户的信息更新数据库。

ValidateUser

验证提供的用户名和密码是有效的。

二、成员角色管理

1.成员角色管理模型

ASP.NET提供的角色管理将整个控制过程分成两个步骤:

  • 访问权限与角色关联
  • 角色与用户关联

2.Roles类

2-2-1.Roles类常用属性

属 性

说 明

ApplicationName

获取或设置要存储和检索其角色信息的应用程序的名称。

CacheRolesInCookie

获取一个值,该值指示当前用户的角色是否已缓存在某个Cookie 中。

CookieName

获取在其中缓存角色名称的Cookie 的名称。

CookiePath

获取缓存角色名称的Cookie 的路径。

CookieProtectionValue

获取一个指示如何保护在Cookie中缓存的角色名称的值。

CookieSlidingExpiration

指示是否将要定期重置角色名称 Cookie 的到期日期和时间。

Enabled

获取或设置用来指示是否为当前Web 应用程序启用角色管理的值。

2-2-2.Roles类常用方法

方 法

说 明

AddUsersToRole

将指定的用户添加到指定的角色中。

CreateRole

将新的角色添加到数据源。

DeleteCookie

删除在其中缓存角色名称的 Cookie。

DeleteRole

已重载。从数据源移除一个角色。

FindUsersInRole

获取属于指定角色的用户列表,其中用户名包含要匹配的指定用户名。

GetAllRoles

获取应用程序的所有角色列表。

GetRolesForUser

已重载。获取当前登录的用户所属的角色列表。

GetUsersInRole

获取一个用户所属角色的列表。

IsUserInRole

已重载。获取一个指示用户是否属于指定角色的值。

RemoveUserFromRole

从指定的角色中移除指定的用户。

ASP.NET成员资格和角色管理的更多相关文章

  1. ASP.NET成员资格与角色管理配置内容

    Web.config中进行配置 以便于连接数据库,使用微软提供的Membership类.·····等   <?xml version="1.0" encoding=" ...

  2. [转]ASP.NET 成员资格 Part.1(API)

    本文转自:http://www.cnblogs.com/SkySoot/archive/2013/04/08/3008418.html 表单验证解决了 ASP.NET 应用程序页面验证的问题,但另一方 ...

  3. ASP.NET 成员资格 Part.2(使用安全控件 Login)

    原文:ASP.NET 成员资格 Part.2(使用安全控件 Login)        准备好提供程序以及用户信息的存储,就可以开始构建验证用户.注册用户或者让用户能够重置密码的用户界面了.ASP.N ...

  4. asp.net core web 添加角色管理

    新建asp.net core web应用 添加RolesAdminController [Authorize(Roles = "Admin")] public class Role ...

  5. 使用成员资格管理用户Membership

    ASP.NET成员资格使您可以验证和管理Web应用程序的用户信息.它提供验证用户凭据,创建和修改成员资格用户以及管理用户设置(如密码和电子邮件地址)的功能. ASP.NET成员资格主要用于ASP.NE ...

  6. SimpleMembership,成员资格提供程序、 通用的提供者和新的 ASP.NET 4.5 Web 窗体和 ASP.NET MVC 4 模板

    ASP.NET MVC 4 互联网模板中添加一些新的. 非常有用的功能,构建 SimpleMembership.这些更改将添加一些很有特色,像很多更简单. 可扩展会员 API 和 OAuth 的支持. ...

  7. membership与成员资格

    membership成员资格是ASP.NET 成员资格为您提供了一种验证和存储用户凭据的内置方法.因此,ASP.NET 成员资格可帮助您管理网站中的用户身份验证.它包含以下功能 创建新用户和密码. 将 ...

  8. MVC4 成员资格、 身份验证

    SimpleMembership,成员资格提供程序. 通用的提供者和新的 ASP.NET 4.5 Web 窗体和 ASP.NET MVC 4 模板 ASP.NET MVC 4 互联网模板中添加一些新的 ...

  9. ASP.Net MVC 5 高级编程 第7章 成员资格、授权和安全性

    第7章 成员资格.授权和安全性 7.1 安全性 ASP.NET MVC 提供了许多内置的保护机制(默认利用 HTML 辅助方法和Razor 语法进行 HTML编码以及请求验证等功能特性,以及通过基架构 ...

随机推荐

  1. Linux自有服务

    Linux自有服务 Linux自带的功能:运行模式.用户和用户组管理.网络配置.ssh服务 1.运行模式 Linux下的初始化进程:init,进程id为1 该进程的配置文件:/etc/inittab ...

  2. 单链表的插入伪算法和用C语言创建单链表,并遍历

    非循环单链表插入结点伪算法讲解 q插入p之后的伪算法:第一种表示方法:r = p->pNext; // p->pNext表示的是所指向结点的指针域,指针域又是指向下一个结点的地址p-> ...

  3. Windows远程桌面,出现身份验证错误,要求的函数不正确

    升级windows10 1803后,mstsc远程桌面出现 mstsc 远程桌面要求的函数不受支持,这可能是由于 CredSSP 加密 Oracle 修正.如图所示: 运行(win+r) gpedit ...

  4. Linux --防火墙(一)

    基本组成 表: filter:用来对数据包进行过滤,根据具体的规则要求决定如何处理一个数据包.表内包含三个链,即INOUT.FORWARD.OUTPUT nat表:主要用来修改数据包的IP地址.端口号 ...

  5. ul自适应li问题

    内容提要: li浮动时ul高度为0,解决ul自适应高度的几种方法 在网页设计中,常常需要对li标签做浮动效果,但是在不同浏览器中会遇到兼容性问题,比如IE中会出现ul高度为0的情况,是效果不能达到预期 ...

  6. May 14th 2017 Week 20th Sunday

    A smooth sea never made a skillful mariner. 平静的海洋练不出熟练的水手. A smooth sea never made a skillful marine ...

  7. CRUD全栈式编程架构之数据层的设计

    CodeFirst 一直以来我们写应用的时候首先都是创建数据库 终于在orm支持codefirst之后,我们可以先建模. 通过模型去创建数据库,并且基于codefirst可以实现方便的 实现数据库迁移 ...

  8. Android(java)学习笔记41:Map集合功能概述

    1. 下面通过代码引入Map集合: 如下 package cn.itcast_01; import java.util.HashMap; import java.util.Map; /* * 作为学生 ...

  9. 成都夏季招聘会IT行业缺口大!

    上个周末成都的夏季招聘会在新会展中心举行,我们传智播客的专业市场调查员也深入当中.了解IT行业招聘情况,我们发如今IT软件行业专区招聘的公司特别多,可是去应聘的人却非常少.这意味着IT行业正处于供不应 ...

  10. Android——HelloWorld

    今天正式加入实验室做安卓,看上去无从下手,让我想到当年学ACM一样,但是也一直搞过来了,现在又是一个新的起点. 废话不多说~~~ Hello World 安装: JDK SDK Eclipse 参考: ...