OAuth 2 Client Credentials Grant Partie 2

OAuth 2 Client Credentials Grant Partie 2

Salut les amis! Dans la deuxième partie de ce tutoriel, nous allons d'abord créer un service pour exposer nos ressources et le sécuriser. Dans la première partie, nous avons mis en place notre serveur d'autorisation, si vous ne l'avez pas suivi je vous invite à le faire OAuth2 Client Credentials Grant.

Concrètement, nous allons créer un micro service "resource-server" qui va exposer des ressources. Pour consommer ces ressources, le client devra fournir un jeton attribué par le serveur d'autorisation. Rendez vous sur ce site pour créer le projet. Nous avons besoin de déclarer deux dépendances:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
   <groupId>org.springframework.security.oauth.boot</groupId>
   <artifactId>spring-security-oauth2-autoconfigure</artifactId>
   <version>2.2.3.RELEASE</version>
</dependency>        

Comme dans la première partie, il faut indiquer à Spring qu'il s'agit d'un serveur de ressources, pour cela il faut annoter la classe principale avec @EnableResourceServer. Ensuite nous allons renseigner notre fichier de propriétés comme suit:

Aucun texte alternatif pour cette image

Les points importants à noter sont:

  • token-info-uri: rappelez vous, le client devra fournir un jeton ou token pour accéder aux ressources, du coup il faut indiquer au serveur de ressources l'adresse à laquelle il pourra contacter le serveur d'autorisation afin de vérifier que le jeton fourni par le client lui permet d'accéder aux ressources demandées.
  • ensuite, on renseigne les identifiants du serveur de ressources précédemment déclarés lors de la première partie, afin qu'il puisse s'identifier auprès du serveur d'autorisation.

Maintenant, nous allons exposer deux endpoints, l'un sera public et accessible à tous, et l'autre sécurisé, du coup nécessite un jeton d'accès.

Aucun texte alternatif pour cette image

Ensuite, il faudra configurer Spring Security pour restreindre les accès aux endpoints sécurisés, en l'occurrence ici "/private" et autoriser les accès aux endpoints publics.

Aucun texte alternatif pour cette image

Et voilà, c'est tout pour notre serveur de ressources, maintenant il ne reste plus qu'à créer un client pour consommer les ressources.

Le code source pour ce tutoriel est disponible ici. Rendez vous dans la troisième et dernière partie de ce tutoriel.

Identifiez-vous pour afficher ou ajouter un commentaire

Plus d’articles de ElHadji Omar DIONE

  • OAuth2 Client Credentials Grant Partie 3

    OAuth2 Client Credentials Grant Partie 3

    Salut les amis, nous voici pour la troisième et dernière partie de ce tutoriel sur Spring et OAuth2. Si vous n'avez pas…

  • OAuth 2.0 Client Credentials Grant

    OAuth 2.0 Client Credentials Grant

    Salut les dévs! Dans cette première partie, nous allons voir comment créer un serveur d'autorisation, puis sécuriser un…

  • Les Resolvers avec Angular

    Les Resolvers avec Angular

    Salut les dévs, aujourd'hui nous allons voir un concept important dans Angular qui peut s'avérer parfois être très…

  • Les Reactives Forms avec Angular

    Les Reactives Forms avec Angular

    Salut les dévs, alors comme promis, let's go pour ce premier post qui présentera un nouveau module introduit dans la…

Autres pages consultées

Explorer les sujets