首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >JSESSIONID cookie未显示安全标志

JSESSIONID cookie未显示安全标志
EN

Stack Overflow用户
提问于 2019-03-15 05:48:51
回答 1查看 777关注 0票数 0

应用程序部署在AWS上,并在端口80上提供服务,ELB将该端口转发到443。Spring安全用于创建设置了安全标志的cookie的会话。当我点击应用程序主机名时,我可以看到设置了安全标志,如下所示。

curl -I target_hostname

Set-Cookie: JSESSIONID=XXXXXXXX;Path=/;Secure;HttpOnly

但是当我直接点击EC2 IP (使用curl)时,我可以看到安全标志没有设置。

curl -I target_ec2_ip

设置Cookie: JSESSIONID=XXXXXXXX;Path=/;HttpOnly

为什么会发生这种情况,有人能解释吗?

EN

回答 1

Stack Overflow用户

发布于 2019-03-15 08:17:52

我将假设您在ELB终止了SSL,并通过HTTP (端口80)直接与EC2实例联系。在这种情况下,以下情况适用:

RFC 6265

如果cookie的secure-only标志为true,则请求uri的方案必须表示“安全”协议(由用户代理定义)。

注意:本文档未定义“安全”协议的概念。通常,如果协议使用传输层安全性,例如SSL或TLS,则用户代理认为该协议是安全的。

MDN doc更加明确:

不安全的网站(

:)不能再用“安全”指令设置cookie(在Chrome 52+和火狐52+中是新的)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55172538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档