Nous avons un serveur de transactions auquel sont connectées différentes applications clientes. L'exigence est d'avoir un moyen d'authentification sécurisé pour que les applications clientes puissent communiquer avec le serveur de transactions. Les deux solutions envisagées sont le JWT et les certificats clients.
À votre avis, quels sont les avantages et les inconvénients de l'une ou l'autre option du point de vue de la sécurité et de l'efficacité. Je me rends compte que cette question est un peu générique et c'est précisément parce que nous voulons obtenir des idées plus généralisées avant de passer à une solution spécifique étant donné que ces composants sont encore en cours de développement.
Tous les conseils de ceux qui ont utilisé l'une ou l'autre technologie seraient appréciés!
Pour un peu de contexte, j'ai beaucoup travaillé avec l'authentification basée sur les jetons JWT, mais j'ai peu d'expérience avec les certificats clients, donc ma réponse pèsera biaisée (informations et avis) sur JWT.
Avantages du jeton JWT:
Inconvénients du jeton JWT:
Certificats clients Pros:
Certificats clients Contre:
Mon avis: les jetons JWT sont une méthode sécurisée et standardisée d'authentification client et je le recommanderais.
Cela ne peut être répondu sans mieux comprendre votre environnement.
Les certificats client sont utiles comme moyen d'authentification, mais si votre exigence est d'avoir des autorisations différentes pour les services accédant à votre propre service, un certificat client seul ne va pas aider. Comme mentionné ci-dessus, vous devrez gérer les certificats que vous avez émis - mais ce constrant existe avec les JWT qui doivent également être signés. Si vous avez plusieurs certificats externes, vous
Les JWT sont utiles si les consommateurs ont des autorisations différentes et accèdent à votre service via REST. Si la communication n'est pas REST alors ne vous embêtez pas avec les JWT. Vous devrez également gérer le certificat de signature dans les JWT. Si vous prévoyez d'utiliser des JWT, soyez conscient des faiblesses qu'ils avoir:
Il n'y a rien de mal avec les JWT lorsqu'ils sont implémentés correctement, ses personnes justes peuvent bousiller l'implémentation JWT. Je suis biaisé parce que j'essaie actuellement de traiter les modèles JWT dans ma propre organisation qui conduisent à des failles de sécurité car la validation a ignoré les dates d'expiration ...