标签: jsessionid

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

是否可以覆盖Tomcat的JSESSIONID嵌入式生成器,以便能够根据用户的登录名创建此cookie的自定义值?

为什么我需要这样的:我有"粘性会话",配置为将请求路由具有相同JSESSIONID到同一台服务器的负载均衡,我想阻止的情况下,当相同的用户可以开始在不同的服务器上的两个不同的会话.

PS:所有这些都与Amazon EC2有关

java session amazon-ec2 tomcat6 jsessionid

5
推荐指数
1
解决办法
7084
查看次数

在Tomcat 7中通过http标头(cookie)禁用jsessionid

我希望禁用jsessionid在https标头中使用.有没有办法将其关闭或禁用在tomcat 7中设置为cookie?

我要么希望jsessionid嵌入到GET方法url名称值对中,要么成为POST请求名称值对的一部分.

我知道使用基于cookie的会话和URL重写的所有优点和缺点,但我对特定的restful Web服务的特定需求.

我需要tomcat 7接受jsessionid而不使用http头:jsessionid.

谢谢.

更新:

所以我再看了一下,发现是使用web.xml conf实现的.
但是,以下似乎不适用于Tomcat 7.

<session-config>
    <tracking-mode>URL</tracking-mode>
</session-config> 
Run Code Online (Sandbox Code Playgroud)

这是TC7没有完全实现servlet 3.0规范的情况吗?

session tomcat jsessionid tomcat7

5
推荐指数
1
解决办法
1万
查看次数

在网址中删除jsessionid

我在jetty web-server中部署的jsf web应用程序中遇到了问题.在浏览器中访问应用程序时,jsessionID会附加在url中.我想从那里删除它.提前致谢.

jsf jetty jsessionid session-cookies

5
推荐指数
1
解决办法
3715
查看次数

Chrome和JSESSIONID

以下问题与铬...:

我在服务器上运行Grails 1.3.7应用程序.我注意到,当我从Chrome请求静态内容(例如非动态html文件)时,Chrome会创建两个JSESSIONID-Cookies.登录窗口显示时的第一个,以及成功登录后的第二个.如果我想刷新页面或请求其他资源,我将再次登录.(我认为因为Tomcat不理解这两个cookie)

我用FF尝试过,但FF只是创建了一个Cookie,它的工作完美.此外,我已经在本地运行了应用程序,它甚至可以完美地使用chrome.所以,tomecat的东西一定是错的.

环境:

  • Grails-Application 1.3.7(使用Spring-Security-Core 1.2.4)
  • Apache Tomcat 7(在Windows Server 2008上)

我的httpd.conf:

ProxyPass /manager http://myUrl:8080/manager
ProxyPass /myGrailsApp http://myUrl:8080/myGrailsApp
ProxyPassReverse /manager http://myUrl:8080/manager
ProxyPassReverse /myGrailsApp http://myUrl:8080/myGrailsApp

ProxyPass / http://myUrl:8080/myGrailsApp/frontend
ProxyPassReverse / http://myUrl:8080/myGrailsApp/frontend
Run Code Online (Sandbox Code Playgroud)

提前致谢.

更新1:

我重新构建,重新部署应用程序并重新启动tomcat.

现在我注意到:Chrome不再生成两个cookie.但错误是一样的.每次刷新或请求某些内容时,JSESSIONID都会更改,我必须再次登录.

tomcat-server上的一个短监视显示了大量的活动会话 - 来自chrome的那些...

更新2:

我在服务器上本地尝试了它(使用chrome):

  • localhost/myApp/frontend => Apache => FAIL
  • localhost:8080/myApp/frontend => Tomcat =>好的

似乎Apache是​​问题(?).

解:

我已经知道了:) Grails*.gsp-Templates总是在每个请求上请求'favicon.ico' .错误出现在静态内容(如html文件)上的原因是因为我们从Grails-Application重定向到这些资源.

所以我把favicon.ico放在正确的位置,现在它工作:)

此错误仅涉及谷歌Chrome,在FF和IE中它没有任何问题.

grails google-chrome jsessionid tomcat7

5
推荐指数
1
解决办法
8421
查看次数

JSESSIONID根据请求更改chrome

我有一个weblogic 10.3.5 Web应用程序,每次刷新页面时JSESSIONID都会更改.这导致我的应用程序的上下文丢失.

这只发生在Chrome和Safari上,Firefox和IE工作正常.

我已经尝试过添加一个favicon并创建一个context.xml但这些解决方案都没有用.

知道会发生什么事吗?

以下是请求和响应标头:

请求标头: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8,es-419;q=0.6,es;q=0.4
Cache-Control:no-cache
Connection:keep-alive
Cookie:token=4955000b0d09050d0d0d1b5e5c504d484e007c1b505c494f545e48515c00710d0c090f080a05081b4e584f4b545e5452007a6f7c791b5e5c534954595c59000f1b4d5c4e4e4a524f59000b040a050b580a0f0d5e0d5b0d581b50525349525453545e545c51000c0d0d0d130d0d1b5b55000d080d0c0f0d0c090c0f090a08081b49545853595c0069786e721b484f516f585a4f584e5200125c4d4d1251525a5453134555495051;sessionid=7ai6uh9itp94rjck4nx16div8fy86wo7; csrftoken=h95iaNqxKipsA35pC6N89HzZybO9fgtP; JSESSIONID=XWPvSbNTtpnPL5wyMyMQbJZYfXLxjqKXnJ1JMGqHvsryJV7Mh2sL!1610567454 Host:localhost:7001 Pragma:no-cache
Referer:<http://localhost:7001/ServicioPagos/app/index.xhtml? token=4955000b0d09050d0d0d1b5e5c504d484e007c1b505c494f545e48515c00710d0c090f080a05081b4e584f4b545e5452007a6f7c791b5e5c534954595c59000f1b4d5c4e4e4a524f59000b040a050b580a0f0d5e0d5b0d581b50525349525453545e545c51000c0d0d0d130d0d1b5b55000d080d0c0f0d0c090c0f090a08081b49545853595c0069786e721b484f516f585a4f584e5200125c4d4d1251525a5453134555495051&q=1> User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.76 Safari/537.36

响应标头:
Content-Type:text/html
Date:Sun, 19 Jan 2014 03:59:52 GMT
Set-Cookie:JSESSIONID=QgptSbNYvQT1TZCxlj6ylDmxQggMLGM5RTnnrnzrR5bnx1JNq99x!1610567454; path=/; HttpOnly Transfer-Encoding:chunked
X-Powered-By:Servlet/2.5 JSP/2.1
X-Powered-By:JSF/2.0

java session weblogic google-chrome jsessionid

5
推荐指数
1
解决办法
6321
查看次数

如何从document.execCommand("ClearAuthenticationCache")保护我的JSESSIONID?

这可能与此问题重复,但建议的解决方案对我们来说不可行: 防止第三方调用者的document.execCommand("ClearAuthenticationCache")?清除我们的会话cookie

长话短说:IE有一种方法可以使用JavaScript清除会话cookie - document.execCommand(“ClearAuthenticationCache”).这用于各种Web应用程序,包括Outlook Web App(可能还有许多其他应用程序).问题是MS的无限智慧决定了这个命令应该清除所有开放站点的会话cookie(你能告诉我有点苦,我花了几个月的时间才找到随机丢失的JSESSIONIDs的来源).

我们使用JSESSIONID以及另一个令牌来确保用户经过身份验证.JSESSIONID是安全的,httpOnly.这种方法很有效,除非JSESSIONID被第三方消灭.所以我的问题分为两部分:

  1. 有没有办法可以保护我的会话cookie(我们假设涉及客户端配置的任何内容,例如固定或注册表黑客攻击,是不可选的)?

  2. 如果没有,有没有办法让我安全地从中恢复?由于JSESSIONID是httpOnly,浏览器应该无法读取它,但也许有一些我没想到的东西.

如果相关:我们使用Tomcat 7作为我们的网络服务器.该应用程序是一个相当复杂的SaaS应用程序,安全性非常重要.

谢谢大家.

cookies session tomcat jsessionid

5
推荐指数
1
解决办法
450
查看次数

Spring Boot JSESSIONID安全标志未通过HTTPS设置

我们使用Liberty for Java构建了一个Cloud Foundry应用程序.在测试应用程序时,我们发现SSL cookie没有设置安全标志.

问题:当_VCAP_ID设置了安全标志时,JSESSIONID没有设置安全标志

我们使用Spring Boot来开发应用程序,根据文档我们只需要在属性文件中保护cookie标志:http://docs.spring.io/spring-boot/docs/current/reference/html/common -应用- properties.html

解决方案:我们最终通过以下文章自动修复了问题,在弹簧中将安全标志添加到JSESSIONID cookie

有没有人知道Cloud Foundry或Liberty是否存在与无法通过HTTPS同时在JSESSIONID和_VCAP_ID上设置SSL cookie安全标志相关的问题?

cookies jsessionid websphere-liberty sticky-session ibm-cloud

5
推荐指数
0
解决办法
1832
查看次数

Spring Security中的相同站点Cookie

在Spring Security中可以设置Same-site Cookie标志吗?请参阅:https : //tools.ietf.org/html/draft-west-first-party-cookies-07 ,如果没有,请问是否有增加支持的路线图?某些浏览器(例如Chrome)已经支持。TH

security cookies spring-security jsessionid csrf-protection

5
推荐指数
5
解决办法
4253
查看次数

如何使用 Liberty 更改生成的 JSESSIONID 的长度?

在 Liberty 上运行我的项目时,特别是在 Chrome 中,我收到一些警告消息。

[WARNING ] Detected JSESSIONID with invalid length; expected length of 23, found 28, setting: BD14EBEEDBE53803FAE565131A03 to null.
Run Code Online (Sandbox Code Playgroud)

这是因为 Liberty 正在生成长度为 28 的 JSESSIONID,但 Liberty 配置文件将 httpSession 属性 idLength 默认为 23。如果我设置

<httpSession idLength="28" />
Run Code Online (Sandbox Code Playgroud)

在 Liberty server.xml 中,我没有在日志中收到这些警告消息。但是,我想在不更改 server.xml 的情况下解决这个问题。

是否可以将 JSESSIONID 的生成方式更改为默认长度 23?或者也许这是一个糟糕的方法?

javascript session jsessionid websphere-liberty

4
推荐指数
1
解决办法
8311
查看次数

如果不接受cookie,则配置WildFly/Undertow将JSESSIONID放在URL上

我们之前使用过JBoss 7.1.2,并且如果不接受cookie或者请求中没有JSESSIONID cookie,则使用JSESSIONID作为后备的行为作为后备​​.

迁移到WildFly 8.2.0/Undertow 1.1.0后,此URL重写不会发生.

是否可以配置WildFly/Undertow将JSESSIONID作为后备放在URL上?我们知道将session-config放入的可能性web.xml,例如:

<session-config>
  <tracking-mode>URL</tracking-mode>
</session-config>
Run Code Online (Sandbox Code Playgroud)

但我们只希望将URL上的JSESSIONID作为后备解决方案.

jsessionid wildfly undertow wildfly-8

4
推荐指数
1
解决办法
5932
查看次数