Quelle est la principale différence entre JWT (Json Web Token) et SAML? S'il vous plaît, suggérez-moi un exemple de ceux-ci avec sécurité au printemps. Merci d'avance.
Les deux SAML et JWT sont des formats de jeton de sécurité qui ne dépendent d'aucun langage de programmation. SAML est l'ancien format et est basé sur XML. Il est couramment utilisé dans des protocoles tels que SAML-P, WS-Trust et WS-Federation (bien que cela ne soit pas strictement requis).
Les jetons JWT (JSON Web Token) sont basés sur JSON et utilisés dans les nouveaux protocoles d'authentification et d'autorisation tels que OpenID Connect et OAuth 2.0.
Des informations supplémentaires sont que SAML est un protocole et un format de jeton mais JWT est le seul format de jeton.
Les deux sont utilisés pour l'échange de données d'authentification et d'autorisation entre les parties, mais dans un format différent. SAML est un langage de balisage (comme XML) et JWT est un JSON.
SAML (S ecurity A insertion M arkup L anguage) est une ouverture norme d'échange de données d'authentification et d'autorisation entre les parties, en particulier entre un IdP (Id entité P rovider) et un SP (S ervice P rovider) et les protocoles d'identité utilisés dans les déploiements d'entreprise.
JWT (J SON W eb T oken) est un standard ouvert (RFC 7519) qui définit une manière compacte et autonome pour la transmission sécurisée d’informations entre les parties en tant qu’objet JSON. Ces informations peuvent être vérifiées et approuvées car elles sont signées numériquement. Les JWT peuvent être signés à l'aide d'un secret (avec l'algorithme HMAC) ou d'une paire de clés publique/privée à l'aide de RSA.
Le cas d'utilisation le plus important des adresses SAML est l'authentification unique du navigateur Web (SSO, c'est-à-dire, connectez-vous une fois et obtenez un jeton sans avoir à vous connecter à d'autres services). La connexion unique est relativement facile à réaliser dans un domaine de sécurité (à l'aide de cookies, par exemple), mais il est plus difficile d'étendre la connexion unique à plusieurs domaines de sécurité, ce qui a entraîné la prolifération de technologies propriétaires non interopérables. Le profil SSO du navigateur Web SAML a été spécifié et normalisé pour promouvoir l’interopérabilité. (À titre de comparaison, le protocole OpenID Connect le plus récent est une approche alternative à la connexion unique de navigateur Web.) Le ID Token , généralement appelé
id_token
dans les exemples de code, est un jeton Web JSON (JWT) contenant l'utilisateur. Informations sur le profil.