试析aspnetmvc3基于角色访问控制

试析aspnetmvc3基于角色访问控制

ID:32959583

大小:54.32 KB

页数:4页

时间:2019-02-18

试析aspnetmvc3基于角色访问控制_第1页
试析aspnetmvc3基于角色访问控制_第2页
试析aspnetmvc3基于角色访问控制_第3页
试析aspnetmvc3基于角色访问控制_第4页
资源描述:

《试析aspnetmvc3基于角色访问控制》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、试析ASP.NETMVC3基于角色访问控制摘要:网站的一个典型要求是,只允许某些用户(经过身份验证的用户)查看特定的页面。基于角色的访问控制策略(RBAC)通过在用户和权限之间引入角色,弥补了传统方法的某些缺陷。传统的访问控制需要程序员编写大量代码来实现,使用ASP.NETMVC3提供的角色管理,可以快速建立起健壮,功能强大的基于角色的访问控制。关键词:ASP.NET;MVC;基于角色的访问控制;WEB安全在基于Web的信息系统中,由于网络信息共享的特性,系统的安全问题越来越突出,安全性研究越来越重要,对用户访问进行控制是保证系统安全的重要

2、措施之一。以往在对Internet开放的网站上设计实现一个用户权限控制管理系统通常都要花费很多的时间。ASP.NETMVC3内置了基于角色的访问控制模块,实现基于窗体的用户身份验证和权限控制功能,这里浅析其实现方式。1Forms身份验证的原理ASP.NET在Internet上的应用程序广泛采用Forms身份验证方式。由于HTTP协议是无状态的,WEB服务器每次在处理请求时,都会按照用户所访问的资源所对应的处理代码,从头到尾执行一遍,然后输出响应内容,WEB服务器不会记住已处理了哪些用户的请求。虽然HTTP协议是无状态的,我们的业务需求却要求

3、WEB服务器能够记住用户的身份,验证用户的权限。这通常是通过Cookie或者Session来实现,他们都可以保存用户的身份凭据,在不同的HTTP请求之间维持状态。Forms身份验证也是通过这两种方式来实现,既可以读取用户浏览器中加密存储的Cookie,在浏览器不支持Cookie的情况下也可以使用SessionlD来实现身份验证。只需要在Web.config文件中简单配置即可。用户身份验证是用户权限控制的基础。2ASP.NETMVC3基于角色的权限控制ASP.NETMVC3提供了几个关键类来管理用户验证与授权功能Membership集中了用户

4、账户的创建、删除,密码的重置与修改等与用户账户密切相关的功能。Roles将用户与角色联系在一起,一个用户可以属于多个角色,以此来对用户进行不同的授权。Profiles用来存储用户的任意个人数据,如用户的昵称、偏好等数据。以上关键类提供的功能,其具体实现只需要在Web.config文件中配置成微软提供给我们的提供者(Provider)即可。这充分体现了面向对象思想的针对接口编程的特点,我们可以编写自己的Provider来替换掉默认的Provider从而实现功能扩展。微软提供的默认实现可以很好的工作在大部分场景中,而且如果将来有必要升级到自己的

5、方案,也无需对程序做出大量改动。XML格式的配置文件清晰易读,并且提供了丰富的配置选项,可以方便的设置密码最小长度,密码最大错误次数,是否允许找回密码、是否允许重置密码等多种参数。3将权限控制与MVC架构结合不同于ASP.NETWEB应用程序,在MVC3架构下,URL与物理页面之间不再存在一一对应关系°MVC3架构中URL要首先经过路由(Router)处理,分析之后通过路由规则匹配到对应的Controller,由Controller负责呈现页面。而路由规则是可以经常变化的。以往在ASP.NETWEB应用程序中对页面设置访问权限的办法已经不再

6、适用。所以我们现在使用过滤器(F订ter)来给用户授权。最常用的权限过滤器是[Authorize],用于Controller类或者Controller方法上,表示此类中的所有方法或者某个方法只有通过验证的用户才能调用。加入参数之后如[Authorize(Roles二"Admin")]表示只有属于Admin用户组的用户才可以调用此方法oAuthorize过滤器可以被继承,方便开发者编写自己的授权方法。使用过滤器来进行访问控制是AOP编程在WEB开发中的经典模型。4结语ASP.NETMVC3向广大开发者提供了不用编写复杂代码就可以使用的功能全面

7、的基于角色的用户访问控制方案。这套方案的扩展性也相当好,如果掌握了自定义Provider和Filter的编写方法,完全可以实现更多的高级功能,满足各种业务场景的需要。[参考文献][1]AdamFreeman,StevenSanderson.ProASP・NETMVC3FrameworkThirdEdition,Apress,2011.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。