私はトークンを使用してパーミッションをチェックするためにスプリングブートを使用して残りのAPIサービスを開発しています - ログインリクエストでmemcacheにキー値を保存し、トークン(文字列)を長さ50でキーしますあなたのID。私の残りのコントローラにアクセスするには、私の残りのコントローラは、このトークンを取得パラメータ(POSTと同じロジック、put ...)よりもユーザーのIDを得る(memcacheから)例 "carwashs/2 PUT"これらのFKのものが類似している場合は、洗車を更新するアクセス権を持っている場合、車の洗浄は会社にFKを、ユーザーにはFKがあります。スプリングセキュリティを使用して残りのAPIを確保する別のアプローチを探しています現在の方法は安全ではありません(私はURLのトークンを参照して、すべてのHTTPリクエストでパラメータを取得します)。しかし、公式の文書で与えられている例では、春のセキュリティはパーミッションenumとログインページでしか動作しないようです。パーミッションを使用して残りのAPIを保護する方法
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication().withUser("anon").password("123456").roles("USER");
auth.inMemoryAuthentication().withUser("admin").password("123456").roles("ADMIN");
auth.inMemoryAuthentication().withUser("userr").password("123456").roles("DBA");
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/admin/**").access("hasRole('ROLE_ADMIN')")
.antMatchers("/dba/**").access("hasRole('ROLE_ADMIN') or hasRole('ROLE_DBA')")
.and().formLogin();
}
}
このアプローチを使用して特定の洗車に許可を確認する方法はありますか?
私はあなたが春のaclを必要と思う:https:// do e- –