¿Diferencia entre JWT y SAML?
(3)
La información adicional es que el SAML es un protocolo y un formato de token, pero JWT es el único formato de token.
¿Cuáles son las principales diferencias entre JWT (Json Web Token) y SAML? Por favor, sugiérame un ejemplo de esto con seguridad de primavera. Gracias por adelantado.
Tanto SAML como JWT son formatos de token de seguridad que no dependen de ningún lenguaje de programación. SAML es el formato más antiguo y está basado en XML. Se usa comúnmente en protocolos como SAML-P, WS-Trust y WS-Federation (aunque no es estrictamente necesario).
Los tokens JWT (token web JSON) se basan en JSON y se utilizan en nuevos protocolos de autenticación y autorización como OpenID Connect y OAuth 2.0.
SAML ( S ecurity A ssertion M arkup L anguage) es un estándar abierto para el intercambio de datos de autenticación y autorización entre partes, en particular, entre un IdP ( Id. P rovider entidad) y un SP ( S ervicio P rovider), y los protocolos de esta Identidad. utilizado en implementaciones empresariales.
- Un IdP ( Id Entidad P rovider): autentica a los usuarios y proporciona a los Proveedores de Servicios una Afirmación de Autenticación si tiene éxito;
- Un SP (Servidor de servicios): confía en el proveedor de identidad para autenticar a los usuarios.
JWT ( J SON W eb Tken) es un estándar abierto (RFC 7519) que define una forma compacta y autónoma para transmitir información de forma segura entre las partes como un objeto JSON. Esta información puede ser verificada y confiable porque está firmada digitalmente. Los JWT se pueden firmar utilizando un secreto (con el algoritmo HMAC) o un par de claves pública / privada usando RSA.
SAML :
El caso de uso más importante que aborda SAML es el inicio de sesión único (SSO) del navegador web. El inicio de sesión único es relativamente fácil de lograr dentro de un dominio de seguridad (por ejemplo, mediante cookies), pero extender el SSO a través de dominios de seguridad es más difícil y dio lugar a la proliferación de tecnologías patentadas no interoperables. El perfil de SSO del navegador web SAML fue especificado y estandarizado para promover la interoperabilidad. (A modo de comparación, el protocolo OpenID Connect más reciente es un enfoque alternativo al SSO del navegador web). El token de ID , generalmente denominado
id_token
en los ejemplos de código, es un token web JSON (JSON) que contiene información de perfil de usuario.