【问题标题】:How to use Spring Security's CSRF feature for stateless endpoints?如何将 Spring Security 的 CSRF 功能用于无状态端点?
【发布时间】:2014-01-04 13:10:04
【问题描述】:

我正在使用带有无状态 Web 服务的 Spring Security。我想使用 Spring Security 3.2 中的 CSRF 功能。无状态网络应用可以做到这一点吗?

这是相关的 Java Config,因为我暂时不得不禁用 CSRF。

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
            .sessionManagement()
                .sessionCreationPolicy(SessionCreationPolicy.STATELESS)
                .sessionFixation().none().and()
            .csrf().disable();
}

【问题讨论】:

  • 您的网络服务是否完全可以在网络浏览器中使用?
  • 是的。主要用于单页网页应用(AngularJS)

标签: java spring-security csrf


【解决方案1】:

如果您的服务真的是无状态的,那么 CSRF 保护可能根本没有意义。只要服务器不使用 cookie 来识别/验证用户,您的服务就不会受到 CSRF 攻击。

详细解释见http://sitr.us/2011/08/26/cookies-are-bad-for-you.html

【讨论】:

    猜你喜欢
    • 2015-03-28
    • 2018-08-05
    • 2020-08-12
    • 2013-03-21
    • 2014-11-29
    • 2015-10-26
    • 2020-12-02
    • 1970-01-01
    • 2021-09-11
    相关资源
    最近更新 更多