【问题标题】:Securing Spring websocket保护 Spring websocket
【发布时间】:2015-04-14 06:28:29
【问题描述】:

我在我的应用程序中使用 Spring Websocket。我正在使用WebSocketConfigurer 创建 websocket。现在,我需要确保这个 websocket 是安全的。但是,我遇到的 Spring Security 和 WebSocket 的所有示例都使用AbstractSessionWebSocketMessageBrokerConfigurer,然后使用AbstractSecurityWebSocketMessageBrokerConfigurer 进行保护。是否有任何示例说明如何保护使用 WebSocketConfigurer 创建的 websocket?

【问题讨论】:

  • 所以你的问题是关于如何使用 Spring Session,而不是 Spring Security?如果是这样,听起来好像这与github.com/spring-projects/spring-session/issues/98有关
  • 我想是的。基本上,我有一个具有 REST 服务和 websocket 的应用程序。客户端将在 REST 服务上请求数据,并且该数据将通过 websockets 提供。我需要确保 REST 和 websocket 端点都是安全的。为了实现这一点,我认为我可以使用 Spring Security/Spring Session。但是,我正在努力让这个工作。你能举一个对我有帮助的例子吗?
  • 现在我认为你需要将你的配置基于github.com/spring-projects/spring-session/blob/…
  • 嗯.. 我已经设法编写了一个使用 Spring Session 和 Spring security 的安全 websocket。如果你有兴趣,我可以把代码放在github上。这样你就可以告诉我我是否缺少任何东西......无论如何,感谢你的帮助......
  • 这个问题还没有很好的解决方案:github.com/spring-projects/spring-session/issues/340

标签: spring spring-security spring-websocket


【解决方案1】:

您不必做任何特别的事情来保护您的 websocket。它将遵循您为 REST 端点选择的相同机制。基本上 spring-security 为两者提供了统一的安全机制,因为 websocket 也从初始 HTTP 握手开始。 如果您想查看实际情况,您应该查看 websocket 的 spring 文档所引用的 portfolio app

【讨论】:

  • 在提供的示例中,csrf 只是被禁用...这不是我们想要的生产应用程序
猜你喜欢
  • 1970-01-01
  • 2014-10-27
  • 2018-07-31
  • 2018-02-05
  • 1970-01-01
  • 2012-05-07
  • 2016-04-17
  • 2016-08-25
  • 1970-01-01
相关资源
最近更新 更多