web-dev-qa-db-fra.com

Autoriser toutes les URL sauf une dans la sécurité Spring

Je voudrais protéger une seule URL, tout en permettant un accès anonyme à tout le reste.

Les exemples de configuration Java Java que je vois sur Internet semblent tous indiquer que vous devez explicitement permitAll chaque URL, et hasRole approprié pour les URL qui doivent être protégés. Dans mon cas, cela crée un code Java Java que je modifie chaque fois que j'ajoute une nouvelle URL à l'application. Y a-t-il un moyen plus facile Java que je peux utiliser.

Et notez également que dans mon cas, l'URL que je protège est une sous-ressource, par exemple employee/me, Je voudrais employee/list, etc., pour être accessible de manière anonyme.

Si vous utilisez Configuration Java, vous pouvez utiliser quelque chose comme suivant dans votre méthode configure:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
            .authorizeRequests()
                .antMatchers("/employee/me").authenticated()
                .antMatchers("/**").permitAll();
}
26
Ali Dehghani