J'ai développé un service Web RESTful en utilisant Spring Boot. Une fois qu'une URL est entrée, une ressource JSON est renvoyée. Le côté serveur n'est pas parfaitement conforme à JSON API mais cela fonctionne.Application de démarrage sécurisé Spring Restful
Maintenant, je veux sécuriser le service RESTful avec une simple authentification de base HTTP. Il suffit de mettre, si un client envoie un HTTP GET
afin d'accéder
http://mycompany.com/restful/xyz
il recevra une erreur HTTP non authentifié, sauf si la demande est configuré avec une bonne Authorization basic XXXXXXXX
. Le xxxxxx est la forme cryptée de utilisateur: pwd
Je voulais le faire avec Spring Security. Après quelques googler je pourrais avoir besoin de créer une classe comme:
@Configuration
@EnableGlobalMethodSecurity(prePostEnabled = true)
@EnableWebSecurity
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@Autowired
public void configureGlobalSecurity(AuthenticationManagerBuilder auth) throws Exception {
....
}
@Override
protected void configure(HttpSecurity http) throws Exception {
....
}
}
Il y a deux choses que je dois comprendre:
La plupart du printemps échantillon de sécurité, j'ai trouvé étaient liés en quelque sorte à l'application Web en utilisant Spring MVC , mais je suis sûr qu'il peut être utilisé dans un scénario comme indiqué ci-dessus - un service Web autonome (dans un Tomcat tout droit, mais pas une application Web);
Quelqu'un peut-il montrer un certain bout de code dans les deux méthodes ci-dessus que le travail à l'effet que seuls certains utilisateurs/passwd est autorisé à passer le filtre à la ressource,
http://mycompany.com/restful/xyz
sinon un code d'erreur d'authentification HTTP est retourné.
Quelqu'un peut-il aider?
merci, fonctionne comme un charme –