Was ist der Hauptunterschied zwischen JWT (Json Web Token) und SAML? Bitte schlagen Sie mir ein Beispiel mit Federsicherheit vor. Danke im Voraus.
Beide SAML und JWT sind Sicherheitstokenformate, die nicht von einer beliebigen Programmiersprache abhängig sind. SAML ist das ältere Format und basiert auf XML. Es wird häufig in Protokollen wie SAML-P, WS-Trust und WS-Federation verwendet (obwohl dies nicht unbedingt erforderlich ist).
JWT-Token (JSON-Token) basieren auf JSON und werden in neuen Authentifizierungs- und Autorisierungsprotokollen wie OpenID Connect und OAuth 2.0 verwendet.
Zusätzliche Informationen sind, dass die SAML ein Protokoll und ein Tokenformat ist, JWT jedoch das einzige Tokenformat ist.
Beide werden für den Austausch von Authentifizierungs- und Autorisierungsdaten zwischen Parteien verwendet, jedoch in einem anderen Format. SAML ist eine Markup Language (wie XML) und JWT ist ein JSON.
SAML (S Sicherheit A ssertion M arkup L sprache) ist ein offener Standard für Austausch von Authentifizierungs- und Autorisierungsdaten zwischen Parteien, insbesondere zwischen einer IdP (Id Entität P rovider) und einem SP (S ervice P rovider) und diese Identitätsprotokolle, die in Unternehmensbereitstellungen verwendet werden.
JWT (J SON W eb T oken) ist ein offener Standard (RFC 7519), der ein kompaktes und definiert unabhängige Methode zur sicheren Übertragung von Informationen zwischen Parteien als JSON-Objekt. Diese Informationen können überprüft und als vertrauenswürdig eingestuft werden, da sie digital signiert sind. JWTs können mit einem geheimen Schlüssel (mit dem HMAC-Algorithmus) oder einem öffentlichen/privaten Schlüsselpaar mit RSA signiert werden.
Der wichtigste Anwendungsfall, für den SAML-Adressen gelten, ist das einmalige Anmelden eines Webbrowsers (SSO, d. H. Einmal anmelden und ein Token erhalten, ohne sich bei anderen Diensten anmelden zu müssen). Single Sign-On ist innerhalb einer Sicherheitsdomäne relativ einfach zu bewerkstelligen (z. B. mithilfe von Cookies). Die Erweiterung von SSO auf Sicherheitsdomänen ist jedoch schwieriger und hat zur Verbreitung nicht interoperabler proprietärer Technologien geführt. Das SSL-Profil des SAML-Webbrowsers wurde spezifiziert und standardisiert, um die Interoperabilität zu fördern. (Zum Vergleich: Das neuere OpenID Connect-Protokoll ist ein alternativer Ansatz für SSO eines Webbrowsers.) Das ID-Token , in Codebeispielen normalerweise als
id_token
bezeichnet, ist ein JSON-Web Token (JWT), das Benutzerprofilinformationen enthält .