我正在用 Spring 和 Tiles 做一個新的 webapp。到目前為止,我已經登錄,創建/編輯用戶工作。現在我必須從帶有 json 的第三個應用程序的 Rest Controller 開始。我只需要在其余 URL 上禁用 csrf。我嘗試使用 spring 中的 XML <csrf disabled="true"/>,它可以工作,但是對于整個應用程序,有沒有辦法通過路徑進行此配置,或者唯一的方法是用 Java 寫下來?:@Configuration@EnableWebSecuritypublic class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); }}這對我不起作用,我發現的每個簡單示例都是相同的,并且似乎對除我之外的所有人都有效,我做錯了什么?彈簧安全配置:<?xml version="1.0" encoding="UTF-8"?><beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd"> <http auto-config="true"><!-- <csrf disabled="true"/> --> <intercept-url pattern="/" access="permitAll" /> <intercept-url pattern="/welcome" access="hasRole('ROLE_ADMIN')"/><!-- <intercept-url pattern="/login" access="IS_AUTHENTICATED_ANONYMOUSLY" access="ROLE_USER,ROLE_ADMIN"/> --> <intercept-url pattern="/administration/**" access="hasRole('ROLE_ADMIN')"/> <form-login login-page="/login" default-target-url="/" authentication-failure-url="/login?error" username-parameter="username" password-parameter="password" /> <logout logout-success-url="/login?logout" /> </http>
1 回答

一只斗牛犬
TA貢獻1784條經驗 獲得超2個贊
將此添加到我的 xml 配置中并且工作正常:
<http pattern="/rest/**" security="none" />
然后<http... </http>
是標準應用程序的其他配置
添加回答
舉報
0/150
提交
取消