gwt - 通过 Spring Security 登录保持 GWT 历史哈希

标签 gwt spring-security url-parameters

我正在用 GWT 历史记录支持改造我的应用程序,我偶然发现了一个我不太确定该做什么的情况。这个问题的答案不一定与 GWT 相关。

GWT 的历史支持功能通过散列标签(即 index.html#token)传递。安全限制要求用户在实际能够访问 index.html 之前登录,因此他们会被发送到登录页面,保留 token (login.html#token).到目前为止,一切都很好。现在用户通过身份验证,Spring 将它们发送到 index.html(默认目标)并删除 URL 的 #token 部分。

我如何强制 Spring Security 维护 token 并将我新认证的用户发送到他们请求的页面 (index.html#token)?因为我已经让 Spring Security 身份验证正常工作,所以我不想重构我的应用程序处理登录的方式。

最佳答案

经过大量挖掘,我在 Spring's Jira 上找到了答案.正如 Colin Alworth 所说,该 token 实际上并不是请求的一部分,因此 Spring Security 永远不会在服务器端看到它,因此无法使用它来确定最终 URL。所以我使用的方法是将散列(客户端)附加到 j_spring_security_check,使其成为 j_spring_security_check#token。现在 token 可以顺利传递,让我拥有一个安全可靠的应用程序和有效的 token 。

感谢您的帮助 Colin,您的回答让我朝着正确的方向思考。

关于gwt - 通过 Spring Security 登录保持 GWT 历史哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8957131/

相关文章:

gwt - gwt 中 uibinder 的动态值

java - 关于 GWT 中常规 servlet 的问题(在开发模式下工作,在 tomcat 中部署时不工作)

具有奇怪时间戳格式的 socket.io (?)

php - 在javascript中调用url参数

php - 使用 URL 参数重定向网页

java - 是否可以避免多次重写相同的回调?

java - Google Web Toolkit 与 Straight Javascript 对于相当大和复杂的应用程序?

spring-security - 如何在 spring boot 应用程序中使用 spring security 和 Redis 获取当前经过身份验证的用户 Principal

spring - Webflux JWT 授权无法正常工作

java - Google App Engine + Spring + 域对象实例安全