0
我在彈簧引導安全方面玩了一下。我使用mongodb,spring-boot-starter-data-rest,spring-boot-starter-security和spring-boot-starter-web。我使用了像REST服務這樣的自動曝光庫的可能性。我有兩個存儲庫用戶和客戶。用戶存儲庫用於帳戶。 後擴展WebSecurityConfigurerAdapter這樣的:使用彈簧引導進行休息服務的訪問控制
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.authorizeRequests()
.antMatchers("https://stackoverflow.com/users/**")
.hasRole("ADMIN").antMatchers("/", "/customers")
.hasRole("USER")
.anyRequest().authenticated()
.and()
.formLogin().permitAll();
}
A無法控制與他們有ADMIN角色的用戶訪問/用戶/頁。在訪問服務時我獲得了身份驗證,但每個角色的每個用戶都可以隨處訪問。應該配置什麼?
是的,還有一種方法從哪個類?我只有實體類users.java和customer.java。我使用自動生成的REST? – vmaric
因此,您需要明確使用Spring Data JPA存儲庫來實現控制器+服務層。之後,@ @ PreAuthorize' /'@ PostAuthorize'的最佳位置就是服務層方法。 – luboskrnac
我不能使用MongoDB自動曝光實體(與生成的REST),我希望實現訪問控制? – vmaric