springboot整合security的問題解決

springboot今天整合了spring security安全框架,整合過程中坑很多:
1.There is no PasswordEncoder mapped for the id "null",是因爲security版本升級問題  
2.CSRF機制,只有GET|OPTIONS|HEAD|TRACE|CONNECTION可以通過,這個問題導致,我認爲是mybatis和jpa訪問數據庫衝突,結果不是,網上查到的資料不能解決此問題,所以我http.csrf().disable(); // 禁用CSRF機制,只有禁用除GET的其他請求纔可以通過訪問
3.解決靜態資源被攔截的問題,項目的css及其他靜態資源也會被攔截,在WebSecurityConfig配置類中增加配置解決問題
4.權限分配問題:WebSecurityConfig增加@EnableGlobalMethodSecurity(prePostEnabled = true)註解,意思是開啓security註解,可以直接在controller的方法上聲明註解,可以進行角色攔截,controller上加@PreAuthorize("hasRole('ROLE_ADMIN')")// 只有管理員纔可以請求用戶管理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章