1

我有我自己的映射setCred/,當它通過http調用POST請求時,它返回403錯誤。但是,當我刪除@EnableOAuth2Sso它一切正常。 我不知道我在這裏失去了什麼部分。Spring安全中的@EnableOAuth2Sso後的錯誤403

@EnableOAuth2Sso 
@Controller 
public class TestAPI { 
    @RequestMapping(value = "/setCred", method = RequestMethod.POST, consumes = "application/json", produces = "text/plain") 
    public ResponseEntity<?> setCred(@RequestBody StringToken json) throws JsonParseException, JsonMappingException, IOException { 
      ResponseEntity<?> res = null; 
.... 

我的最終目標是在我的網頁(從https://spring.io/guides/tutorials/spring-boot-oauth2/

添加facebook login我也得到了security.basic.enabled=falseapplication.properties

回答

2
protected void configure(HttpSecurity http) throws Exception { 
    http.csrf().disable(); 
} 

使用Spring Security開始4.0 CSRF保護默認情況下啓用,我現在刪除它,當時我的前端沒有處理任何CSRF令牌。但是將來我會確保在每個POST請求中包含一個CSRF令牌。當然,根據用戶的意圖,CSRF可能會啓用或不啓用,關於啓用CSRF的唯一「壞」部分會增加我們的代碼的複雜性。