《ASP NET开发与应用实践》课件第8章第1节第2节.pptx
本章教学要点
本章要点:
8-1网站安全登录技术
8-2网站登录管理技术
8-3登录控件及使用
8-4页面安全访问技术8-5Sql注入攻击的防范8-6数据加密技术
1
思考问题?
什么是用户管理?
什么是角色?
网站的访问权限如何配置?什么是可视化的配置?
什么是配置文件?
配置文件名为什么?
2
8-1网站安全登录技术
8.1.1成员管理和角色管理概念
成员管理和权限管理,是网站安全管理的重要组成部分。如何确保网站中的重要内容不被未授权的用户访问,是网络信息安全的重要内容。
3
8-1网站安全登录技术
1、Membership(成员管理)
.NET2.0中,Membership提供了一整套内置的用于用户管理、身份验证、用户信任以及数据库架构设计的解决方案。因此,在.NET
2.0中,可以轻易地使用来Membership(成员管理)构建项目的用户管理模块。在开发的同时,
不但可以结合ASP.NET2.0提供的相关控件来实现用户管理,也可以在自定义的控件中调用
Membership提供的方法来进行Web验证。
4
8-1网站安全登录技术
2、Roles(角色管理)
Roles(角色管理)与Membership相结合,构成了ASP.NET2.0框架下用户安全登录的基础。如果要让一个网站的部分内容只提供给拥有特定授权级别的用户浏览,或者只让网站管理员才能进入后台的特定管理模块和拒绝其他没有授权或授权级别不够的用户访问,采用Roles(角色管理)与Membership相结合的处理办法,
将得到绝佳的效果。
5
8.1.2成员管理的实现
1、身份验证
身份验证的4种方式:
◆Windows(默认):基于Windows的身份验证,适合于在企业内部Intranet站点中使用。
◆None:不进行授权与身份验证;
◆Form(常用):基于Cookie的身份认证机制,可以自动将未经身份验证的用户重定向到自定义的“登录网页”,只有登录成功后,方可查看特定网页内容。
Passport:通过Microsoft的集中身份验证服务执行。这种认证方式适合跨站应用,即用户只需一个用户名及密码就可以访问任何成员站点。
6
8.1.2成员管理的实现
在ASP.NET中,通过配置web.config文件来设置不同的身份验证方式。在web.config文件中,有一个authentiCation配置节,用于设置身份验证方式。其格式为:
system.web
authenticationmode=“Windows|Forms|Passport|None”/
/system.web
7
8.1.2成员管理的实现
其中,通过mode属性,配置系统的身份验证方式。例如下列程序,配置的身份验证方式是Windows身份验证方式:
system.web
authenticationmode=“Windows”/
/system.web
也就是,在本机操作系统上成功登录的某个用户,也就自动有了网站的相对应用的
访问权限。
例如下列程序,配置的身份验证方式Forms身份验证方式:
system.web
authenticationmode=“Forms”/
/system.web
也就是,在本机操作系统上成功登录的用户,要访问网站,还必须在网站上登录,以获取相关网站的相应访问权限。
8
2、Form身份验证的工作过程
当用户要登录时,需在“登录网页”上填写一个表单(一般填写用户名和密码两项)并将表单提交到服务器。服务器在接受该请求并验证成功之后,将向用户的本地计算机写入一个记载身份验证信息的Cookie。在后续的浏览网页中,浏览器每次向服务器发送请求时都会携带该Cookie,这样用户就可以保持住身份验证状态。如图8-1所示。
9
2、Form身份验证的工作过程
Bob希望查看网页S1,但匿名用户不可以访问这个页面,因此当Bob试图访问网页S1时,服务器向浏览器返回一要求登录的页面W1。
浏览器向Web服务器发出
读网页S1的请求Web服务器
浏览器
Internet
Web服务器对未授权的用
户发送登录网页W1
工作网页S1登录网页W1
10
2、Form身份验证的工作过程
浏览器向Web服务器发出用户名和密码
浏览器
Internet