当前位置: 首页 > 知识库问答 >
问题:

如何将Spring Security的CSRF功能用于无状态endpoint?

范稳
2023-03-14

我正在使用Spring Security和无状态web服务。我想使用Spring Security 3.2中的CSRF功能。对于无状态的web应用程序,这可能吗?

这是相关的Java配置,因为我必须暂时禁用CSRF。

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

共有1个答案

谭泳
2023-03-14

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

有关详细说明,请参阅http://sitr.us/2011/08/26/cookies-are-bad-for-you.html

 类似资料:
  • 问题内容: 我正在尝试将在这里找到的这个很棒的动画转换为React可重用的组件。看来此组件将需要一个父组件作为画布,而许多子组件则为。 出于性能方面的考虑,将它们变成无状态组件可能会更好,因为会有很多这样的组件。我不熟悉制作无状态组件,并且想知道应该在哪里定义和中定义的和函数。 无状态组件的功能是在组件内部还是外部?换句话说,以下哪个更好? 1: 2: 每种都有什么优点/缺点,其中哪一种对我的特定

  • 在不使用类的情况下,如何在react的功能性无状态组件中使用PropTypes?

  • 问题内容: 结合使用TypeScript和React,我们不再需要扩展,以使编译器知道所有react组件prop都可以有子代: 但是,无状态功能组件似乎并非如此: 发出编译错误: 错误:(102、17)TS2339:类型“ MyProps”上不存在属性“子级”。 我猜这是因为编译器实际上没有办法知道在props参数中将提供香草函数。 所以问题是我们应该如何在TypeScript的无状态功能组件中使

  • 使用带有React的TypeScript,我们不再需要扩展,以便编译器知道所有React组件Props都可以有子级: 然而,无状态功能组件似乎不是这样: 发出编译错误: 错误:(102,17)TS2339:类型“MyProps”上不存在属性“children”。 我想这是因为编译器真的无法知道在props参数中会给出

  • 我有一个REST服务,使用Java、Spring boot和Spring Security以及基本的访问认证构建。没有视图,没有JSP等,没有“登录”,只有可以从单独托管的React应用程序调用的无状态服务。 我已经阅读了各种关于CSRF保护的留档,但是我不能决定我应该使用Spring安全CSRF配置,还是仅仅禁用它?如果我禁用csrf保护,我可以使用我的基本权限像这样使用curl调用服务: 如果

  • 我想只使用Spring Security的CSRF功能而不使用任何其他身份验证/授权功能,因为这些功能是由第三方提供商为我提供的。如果可以做到这一点,我如何告诉Spring不要寻找任何具有其依赖bean的身份验证管理器,只需拦截所有URL,并添加csrf令牌。