Tag: jsessionid

Chrome关闭后,Jsessionid cookie不会过期

我使用Shiro框架进行身份validation。 问题是:当我关闭Chrome浏览器并再次打开它时,我仍然可以访问受保护的URL。 如果我手动删除jsessionid cookie一切正常,则禁止访问受保护的URL。 在jsessionid的设置中,我看到: Expires:浏览会话结束时 。 所以它应该过期,但事实并非如此。 我也在firefox中进行了这个操作,没有那个问题。 我甚至不知道调查的方式。 PS我不使用shiro remember-mefunction。 但是,无论如何,在使用时,Shiro会创建另一个cookie(名为rememberMe)。

在HTTP和HTTPS之间切换时,JSessionID会被覆盖。 怎么解决?

我们有以下情况: 转到http :// website /并单击指向http :// website / appX的链接 检查cookie是否显示带有secure = NO的JSessionID。 打开另一个浏览器窗口或选项卡,然后转到https :// website /并单击指向https :// website / appY的链接。 检查cookie是否显示带有secure = YES的JSessionID。 尝试与步骤1中创建的窗口/选项卡进行交互。我的会话已过期… 如果我们重复这些步骤,但在步骤2中使用https :// website / appX而不是https :// website / appY,那么JSessionID cookie将保留Secure = NO。 所有cookie都有JSessionId,最后附加了jvmRoute。 – 我们正在使用: Apache(2.2.3-43.el5_5.3)+ mod_jk(带粘性会话)和负载均衡器配置到几个JBoss实例(v 4.3.0)。 我发现只有一个完全相同问题的链接(通常其他的使用PHP): http : //threebit.net/mail-archive/tomcat-users/msg17687.html 问:我们如何防止JSessionId cookie被重写?

有人只知道我当前的JSESSIONID冒充/劫持我的会话(Tomcat 7 / Glassfish 3.2))吗?

我正在寻找一个简单的英语,“for dummies”解释JSESSIONID如何从安全方面工作 只知道我当前的JSESSIONID的人是否可以冒充/劫持我的会话? 在什么情况下,JSESSIONID将成为URL的一部分,并且这个OWASP#2安全风险 (场景#1)仍然与最新版本的Tomcat / Glassfish相关,如果是,那么“关闭/打开”以防止它?

Apache Tomcat 7在每个请求上更改JSESSIONID

这个问题让我感到疯狂,所以也许有人可以帮我理解问题所在。 我有一个tomcat web应用程序正面向HAProxy。 HAProxy也在进行SSL卸载,并配置为使用粘性会话。 我正在使用Tomcat的会话复制function,似乎工作正常。 会话出现在两个应用服务器上。 出于某种原因,Tomcat为每个Web请求生成一个新的JSESSIONID,然后将旧会话的内容复制到新会话中。 也就是说,我的会话内容仍然在新会话中,但会生成一个新ID并将其发送回客户端。 但它只对我的Web应用程序执行此操作。 它不会对/ manager应用程序执行此操作。 我已经尝试了本书中的每一个技巧,例如在我的context.xml中设置它: 并在我的Context元素上设置这些属性: 而且,结果仍然是一样的。 Tomcat为每个请求生成一个新的会话ID,并将旧会话的内容复制到新的id中。 我怀疑它与HAProxy有关,除了/ manager应用程序也支持HAProxy并且它没有表现出这种行为。 为什么Tomcat会这样做,我该怎么做才能阻止它呢?

在spring mvc中删除url重写中的jsessionid

我正在使用spring MVC并且在jsessionid中遇到问题,我发现如果在浏览器中没有启用cookie,则会在URL中注入jsessionid,生成类似这样的URL: HTTP://本地主机/类别; JSESSIONID = Bsls4aQFXA5RUDcmZKV5iw CID = 13001? 实际上浏览器没有问题,但是当Google抓取我的网站时,Google抓取工具似乎没有Cookie :),他们会以该格式存储我网站的url,而我的网站会显示在搜索结果中,其url就像包含jsessionid的url一样。 实际上它运行没有任何问题,但我更喜欢在没有jsessionid的情况下将url显示在Google搜索结果中。 有帮助吗?

如何基于用户数据的一些哈希生成自定义JSESSIONID以便复制会话

是否可以覆盖Tomcat的JSESSIONID嵌入式生成器,以便能够根据用户的登录名创建此cookie的自定义值? 为什么我需要这个:我有一个带有“粘性会话”的负载均衡器,配置为使用相同的JSESSIONID将请求路由到同一个服务器,我想防止情况,当同一个用户可以在不同的服务器上启动两个不同的会话时。 PS:这一切都与Amazon EC2有关

在JSESSIONID cookie中设置httponly(Java EE 5)

我正在尝试在JSESSIONID cookie上设置httponly标志。 但是,我在Java EE 5中工作,不能使用setHttpOnly() 。 首先,我尝试使用response.setHeader()从servlet的doPost()创建自己的JSESSIONID cookie。 当这不起作用时,我尝试了response.addHeader() 。 那也行不通。 然后,我了解到servlet处理将会话转换为JSESSIONID cookie并将其插入http头中,因此如果我想使用该cookie,我将不得不编写一个filter。 我写了一个filter并在setHeader()玩setHeader() / addHeader() ,再次无济于事。 然后,我了解到响应对象在进入filter之前有一些刷新/关闭动作,所以如果我想操纵数据,我需要扩展HttpServletResponseWrapper并将其传递给filterChain.doFilter() 。 这已经完成,但我仍然没有得到结果。 显然,我做错了什么,但我不知道是什么。 我不确定这与手头的问题是否完全相关,但是servlet没有向浏览器返回html文档。 所有真正发生的事情是正在填充一些对象并将其返回到JSP文档。 我有点假设Session对象被转换为JSESSIONID cookie,并在发送到浏览器之前将其与添加到请求中的对象一起包装在http标头中。 我很乐意发布一些代码,但我想排除我的困难可能源于对理论的误解。

Spring启动为嵌入式服务器配置自定义jsessionid

我想配置我的servlet上下文,比如查看自定义的jsessionId键(请参阅更改cookie JSESSIONID名称 ) 我相信我可以在运行WAR文件时使用SpringBootServletInitializer ,在onStartup()操作servletContext 。 但是,当我在嵌入式应用程序服务器上运行时,使用new SpringApplicationBuilder().run() ,我不知道操作servlet上下文的最佳位置。

如何防止在URL中显示JSESSIONID

我使用Google Datastore在servlet中创建了一个登录页面,它运行正常。 但有时它会在URL中显示JSESSIONID。 如何阻止JSESSIONID通过URL发送? 为什么它通过URL而不是请求消息?

没有cookie的Spring安全会话

我正在尝试在不利用cookie的情况下管理Spring Security中的会话。 原因是 – 我们的应用程序显示在另一个域的iframe中,我们需要在我们的应用程序中管理会话, 并且Safari限制跨域co​​okie的创建 。 (上下文:domainA.com在iframe中显示domainB.com.domainB.com设置JSESSIONID cookie以在domainB.com上使用,但由于用户的浏览器显示domainA.com – Safari限制domainB.com创建cookie) 。 我能想到实现这一目标的唯一方法(针对OWASP安全建议) – 将URL中的JSESSIONID作为GET参数包含在内。 我不想这样做,但我想不出另一种选择。 所以这个问题都是关于: 有没有更好的替代方案来解决这个问题? 如果不是 – 我怎样才能通过Spring Security实现这一目标 回顾Spring的文档,使用enableSessionUrlRewriting应该允许这样做 所以我这样做了: @Override protected void configure(HttpSecurity http) throws Exception { http .sessionManagement() .sessionCreationPolicy(SessionCreationPolicy.ALWAYS) .enableSessionUrlRewriting(true) 这没有将JSESSIONID添加到URL,但现在应该允许它。 然后我利用此问题中的一些代码将“跟踪模式”设置为URL @SpringBootApplication public class MyApplication extends SpringBootServletInitializer { @Override public void onStartup(ServletContext servletContext) throws ServletException { super.onStartup(servletContext); servletContext […]