户。授权通常是通过⼀个
访问控制列表(ACL
)强制实施,该列表指定了⽤户和它所访问的资源的类型。
3、数据完整性
数据完整性是指数据从发送者传输到接收者的过程中数据不被破坏。
4、数据保密性
数据保密性是保证除了应该访问它的⽤户外,别⼈都不能访问。
注意:授权与保密的区别
⼆者对信息的保密⽅式不同。授权是防⽌信息到达⽆权访问的⽤户,⽽保密是保证信息即使被⾮法获取,也不能被使⽤。
⼆、验证的类型
1、HTTP Basic验证
HTTP的基本验证。它是由HTTP1.1规范定义的,是⼀种保护资源的最简单和最常⽤的验证机制。当浏览器请求任何受保护的资源时,
服务器都要求⼀个⽤户名和⼝令。只有⽤户输⼊了合法的⽤户名/⼝令,服务器才发送资源。
2、HTTP Digest验证
HTTP摘要验证。除了⼝令是以加密的⽅式发送,其他与基本验证⼀样。
优点:⽐基本验证安全。
缺点:只能被IE5以上版本⽀持,许多Servlet容器不⽀持。
3、FORM-Based验证
基于表单的验证。它类似于基本验证,但它使⽤⽤户⾃定义的表单来获得⽤户名和⼝令。开发时必须创建包含表单的HTML页⾯。
4、HTTPS Client验证
客户证书验证。它采⽤HTTPS传输信息。HTTPS是在安全套接层之上的HTTP,SSL可以保证Internet上敏感数据传输的保密性。在
这种机制中,当浏览器和服务器之间建⽴起SSL连接后,所有的数据都以加密的形式传输。
优点:是这⼏种验证中最安全的。所有常⽤的浏览器都⽀持这种验证。
缺点:它需要⼀个证书授权机构。
三、基本验证过程
客户请求⼀个受保护资源时,浏览器和Web容器之间实现⾝份验证的过程:
1)浏览器向某个受保护资源(Servlet或JSPP)发送请求。此时,浏览器并不知道资源是受保护的,所以它发送的请求是⼀般的HTTP请
求,如:
GET
login
HTTP
1.1
2)当服务器接收到对资源的请求后,⾸先在访问控制列表(ACL)中查看该资源是否是受保护的资源。如果不是,服务器将该资源发送
给⽤户;如果是,它并不直接发送该资源,⽽是向客户发送⼀个401 Unauthorized(⾮授权)消息。在该消息中包含⼀个响应头告诉浏览器
访问该资源需要验证。响应消息中还包括验证⽅法和安全域名称以及请求内容的长度和类型。
3)当浏览器收到响应消息后,打开⼀个对话框提⽰输⼊⽤户名和密码。
4)当服务器收到该请求,它将访问访问控制列表中检验⽤户名和密码,如果是合法⽤户且该⽤户可以访问该资源,它将发送资源并在
浏览器中显⽰出来;否则,它将再⼀次发送401 Unauthorized消息,浏览器再⼀次显⽰⽤户名/密码对话框。
四、声明式安全与编程式安全
原文链接:https://wenku.baidu.com/view/ac550de8a2c7aa00b52acfc789eb172ded639903.html
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/18425