第9章Web安全性入门
本章内容
Web安全性措施
安全域模型
定义安全约束
编程式的安全
小结
Web安全性措施
Web应用程序通常包含许多资源,这些资源可被多个用户访问,有些资源要求用户必须具有一定权限才能访问。可以通过多种措施来保护这些资源。
理解验证机制
Web应用的安全性措施主要包括下面4个方面:
1. 身份验证
2. 授权
3. 数据完整性
4. 数据保密性
验证的类型
在Servlet规范中定义了如下4种用户验证的机制:
① HTTP Basic 验证;
② HTTP Digest 验证;
③ HTTPS Client 验证;
④ HTTP FORM-based 验证。
1. HTTP Basic 验证
这种验证称为HTTP基本验证。当浏览器请求任何受保护资源时,服务器都要求一个用户名和口令。如果用户输入了合法的用户名/口令,服务器才发送资源。
优点:实现较容易,所有的浏览器都支持。
缺点:不能自定义对话框的外观。
2. HTTP Digest 验证
这种验证称为HTTP摘要验证,它除了口令是以加密的方式发送的,其他与基本验证都一样,但比基本验证安全。
缺点:它只能被IE 5以上版本支持;许多Servlet容器不支持,因为规范并没有强制要求。
3. FORM-based 验证
这种验证称为基于表单的验证,它类似于基本验证,但它使用用户自定义的表单来获得用户名和口令而不是使用浏览器的弹出对话框。
优点:所有的浏览器都支持,且很容易实现,客户可以定制登录页面的外观(Look And Feel)。
缺点:不安全。
4. HTTPS Client 验证
这种验证称为客户证书验证,它采HTTPS传输信息。
优点:它是4种验证类型中最安全的;所有常用的浏览器都支持这种验证。
缺点:它需要一个证书授权机构(如VeriSign)的证书;它的实现和维护的成本较高。
基本验证的过程
(1)浏览器向某个受保护资源(Servlet或JSP)发送请求,浏览器并不知道资源是受保护的,所以它发送的请求是一般的HTTP请求,例:GET / HTTP/
(2)当服务器接收到对资源的请求后,首先在访问控制列表(ACL)中查看该资源是否是受保护资源,如果不是,服务器将该资源发送给用户。如果发现该资源是受保护的,它并不直接发送该资源,而是向客户发送一个401 Unauthorized(非授权)消息。
JAVAweb开发课件概述 来自淘豆网m.daumloan.com转载请标明出处.