但凡做web项目的,或多或少的会接触cookie。做j2ee也不例外。本人也一直使用,不能说不熟,但今天有人问.setSecure();方法的作用时,还真不敢说出一二来。因为我没使用过。只是看书时,有这样的一句话:
- Set-Cookie 的 secure 属性就是处理这方面的情况用的,它表示创建的 cookie 只能在 HTTPS 连接中被浏览器传递到服务器端进行会话验证,如果是 HTTP 连接则不会传递该信息,所以绝对不会被窃到
也很好理解:setSecure(true); 的情况下,只有https才传递到服务器端。http是不会传递的。
做j2ee的人都知道servlet的接口中也定义了Cookie对象,也有其方法setSecue(false);
现在我提出问题:在http连接下
- 当setSecure(true)时,浏览器端的cookie会不会传递到服务器端?
- 当setSecure(true)时,服务器端的cookie会不会传递到浏览器端?
- 答案:1)不会 ; 2)会
原理:服务器端的Cookie对象是java中的对象,请不要和浏览器端的cookie文件混淆了。服务器端的Cookie对象是方便java程序员包装 一个浏览器端的cookie文件。一但包装好,就放到response对象中,在转换成http头文件。在传递到浏览器端。这时就会在浏览器的临时文件中 创建一个cookie文件。
但我们再次访问网页时,才查看浏览器端的cookie文件中的secure值,如果是true,但是http连接。这个cookie就不会传到服务器端。当然这个过程对浏览器是透明的。其他人是不会知道的。
总结如下:secure值为true时,在http中是无效的;在https中才有效。
分享到:
相关推荐
### Cookie设置httpOnly和secure属性实现及问题 #### 一、引言 在现代Web开发中,保护用户的隐私和数据安全至关重要。其中一种常见的做法就是通过设置Cookie的`httpOnly`和`secure`属性来增强安全性。这两个属性...
首先,secure属性是防止信息在传递的过程中被监听捕获后信息泄漏,HttpOnly属性的目的是防止程序获取cookie后进行攻击。 其次,GlassFish2.x支持的是servlet2.5,而servlet2.5不支持Session Cookie的"HttpOnly"属性...
当服务器通过Set-Cookie响应头设置一个Cookie时,如果加上`secure`属性,浏览器将会遵循以下规则: 1. **仅在HTTPS中发送**:当用户通过HTTPS与服务器建立安全连接时,浏览器才会将包含`secure`属性的Cookie发送给...
6. 安全性(Secure):如果设置此属性,Cookie只会在HTTPS安全连接下发送。 7. 只读(HttpOnly):如果设置此属性,Cookie将不能通过JavaScript访问,防止XSS攻击。 三、Cookie的操作 1. 创建Cookie:服务器通过Set...
### Cookie的一些属性 在Web开发领域,Cookies是一种用于存储特定用户信息的重要机制,为Web程序提供了一种非常有用的会话管理方式。多年来,JavaScript开发者在Cookies的使用上积累了丰富的经验,而ASP.NET通过`...
本文重点讨论的是Cookie中的两个重要属性:`secure`和`httpOnly`,以及它们在实际应用中的配置和注意事项。 一、属性详解 1. `secure`属性:当设置为`true`时,Cookie只会通过HTTPS安全协议发送到服务器。这意味着...
- 在安全性要求较高的场景下,建议设置`Secure`属性,确保Cookie数据的安全性。 - 示例代码: ```javascript document.cookie = "username=John Doe; secure"; ``` #### 四、JavaScript中的Cookie操作 以下是一...
Cookie 路径属性安全设置 Cookie 是 HTTP 协议中的一种机制,用于在客户端保存服务器端的信息,以便服务器端可以追踪用户的行为。然而,在某些情况下,Cookie 中的路径属性可能会泄露项目路径,导致安全风险。本文...
开发者可以通过调用库提供的函数或装饰器,轻松地为响应添加安全头,并设置安全的Cookie属性。例如,在Flask中,可以使用`@app.after_request`装饰器来添加安全头: ```python from flask import Flask, make_...
IIS实现反向代理时Cookie域的设置方法 IIS实现反向代理时Cookie域的设置方法
- **secure属性**:当设置为true时,Cookie仅在使用安全协议(HTTPS、SSL)的请求中发送。 - **HttpOnly属性**:该属性用于阻止客户端脚本访问Cookie,从而减少XSS攻击的风险。 - **SameSite属性**:用于防止跨站点...
首先,我们需要创建一个Cookie对象,并设置其属性,如名称、值和过期时间等。以下是一个创建Cookie的例子: ```jsp ; charset=UTF-8" %> String name = request.getParameter("name"); String value = request....
设置Secure属性确保Cookie只在HTTPS连接中传输,增加安全性。 七、Cookie管理最佳实践 1. 限制Cookie大小:每个Cookie的大小不应超过4KB,避免影响性能。 2. 仅在必要时使用Cookie:过多的Cookie会增加网络传输负担...
- 安全属性:可以设置Cookie的Secure属性,确保它只能通过HTTPS传输,防止中间人攻击。 - HttpOnly属性:启用HttpOnly可以防止JavaScript代码访问Cookie,减少跨站脚本攻击(XSS)的风险。 - Max-Age和Expires:控制...
4. **Secure属性**:如果设置了Secure属性,那么Cookie只会在HTTPS安全连接上传输,增加了传输过程中的安全性。 #### 五、Cookie的生命周期管理 - **Expires属性**:通过设置Expires属性,可以指定Cookie的有效期...
- **Cookie 的安全性**:在涉及到敏感数据时,考虑使用 HTTPS 协议并为 Cookie 添加 `secure` 属性,以提高安全性。 - **Cookie 数量限制**:浏览器对单个域名下的 Cookie 数量有限制(通常为 50 个),注意不要超过...
- Secure属性确保Cookie只能在HTTPS连接下传输,增强安全性。 压缩包内的“Test_dl”可能是一个示例代码或测试项目,包含了实现上述功能的Java代码。为了深入理解,你应该解压文件并研究其中的代码,看看它是如何...
4. **Secure属性**:如果未设置`secure`标志,客户端可能会通过非安全通道发送Cookie。 5. **无效Cookie的拒绝**:客户端需要拒绝那些不符合特定规则的Cookie,例如,如果`domain`属性不符合预期或`path`属性不是...
- **安全与隐私**:探讨Cookie的安全性问题,如HTTP Only和Secure属性的使用,防止跨站脚本攻击(XSS)和确保数据在HTTPS连接下传输。 - **同源策略**:理解Cookie的同源策略,即只有来自同一源的请求才能访问该源的...