Téléchargement des produits


Version anglaise


 

La nécessité de mettre en place des éléments de sécurité fait suite à une réflexion sur :

  • l'importance, la nature, la sensibilité des informations à exposer,
  • les catégories de public accédant aux informations,
  • les différentes interactions proposées avec les informations (lecture, création, modification, suppression).

 

S'il est établi que seuls certains utilisateurs ou groupes d'utilisateurs doivent accéder à certaines informations, ou que seuls certains utilisateurs ou groupes d'utilisateurs doivent créer ou modifier ou supprimer certaines informations, une stratégie de sécurisation des ressources doit alors être mise en œuvre.

 

Sécurisation via les mécanismes standards proposés par le container Java EE

Le container Java EE hébergeant les services Web REST Adélia Studio propose nativement des solutions pour sécuriser les ressources, à l'aide de la gestion de l'authentification d'une part et à l'aide de la gestion des autorisations d'autre part.

Néanmoins la gestion de la sécurité des ressources par le biais des mécanismes propres au container Java EE ne répond pas correctement aux besoins imposés par le paradigme REST de communication sans état.

En effet, l'authentification Java EE repose sur un mécanisme qui stocke des informations sur le serveur de ressources (gestion d'un contexte par client authentifié).

Ce mécanisme a également l'inconvénient d'instaurer un couplage fort entre l'authentification et l'accès aux ressources ; il interdit par conséquent la possibilité de déléguer la phase d'authentification à un tiers.

La sécurisation via le container Java EE reste cependant possible et peut être couplée avec la gestion des autorisations via des annotations dans les programmes de services Adélia.

 

Sécurisation via un jeton (JWT)

Pour pallier les inconvénients soulevés par les mécanismes natifs de sécurité des containers Java EE, Adélia Studio propose une gestion de sécurisation des ressources à l'aide de jetons JWT (Json Web Token).

Le mécanisme de sécurisation s'effectue en deux  étapes :

  1. La première étape consiste à authentifier le client demandeur de ressources.
    Ce dernier accède à un service d'authentification qui délivre un jeton JWT contre des credentials (identifiants de connexion) valides.
    Le jeton contient différentes informations
    à travers des attributs nommés claims : notamment le nom de l'utilisateur authentifié, une liste de rôles, une limite dans le temps de la validité du jeton. Pour assurer sa confidentialité, le jeton est signé numériquement à l'aide d'une clé de chiffrement.

  2. La seconde étape consiste à accéder à la ressource voulue en fournissant au serveur de ressources, via le header HTTP Authorization, le jeton précédemment obtenu.
    L'accès à la ressource est alors conditionné, d'une part à la validité du jeton et d'autre part à la mise en regard des rôles du client authentifié avec les autorisations requises.

 

Cliquer ci-dessous pour plus d'informations sur :

 

 

 

 

↑ Haut de page

  • Aucune étiquette