gpt4 book ai didi

angularjs - 使用 Spring Security 重命名 CSRF token header 名称

转载 作者:行者123 更新时间:2023-12-02 23:36:59 26 4
gpt4 key购买 nike

我引用了以下关于csrf configuration的Spring Security文档。

csrf token 的默认 header 名称似乎是:X-CSRF-TOKEN

如文档中所述:

<meta name="_csrf" content="${_csrf.token}"/>
<!-- default header name is X-CSRF-TOKEN -->
<meta name="_csrf_header" content="${_csrf.headerName}"/>

AngularJs 似乎使用以下 header 名称:X-XSRF-TOKEN

  1. 如何更改 Spring 安全端的 header 名称?
  2. 这是最好的继续方式吗?
  3. 它会影响经典非 ajax 表单提交的 CSRF 保护,特别是 XSRF 参数名称吗?

最佳答案

您可以创建自己的 HttpSessionCsrfTokenRepository 的 bean 实例,设置属性headerName在此实例上,并将对此实例的引用传递给 CSRF 配置,如 <security:csrf token-repository-ref="..." /> 。例如,

<bean id="csrfTokenRepository" class="org.springframework.security.web.csrf.HttpSessionCsrfTokenRepository">
<property name="headerName" value="X-SECURITY" />
</bean>

<security:http>
<security:csrf token-repository-ref="csrfTokenRepository" />
</security:http>

关于angularjs - 使用 Spring Security 重命名 CSRF token header 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21604513/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com