Ich habe Schwierigkeiten, eine SAML2.0-Authentifizierung für eine REST-API mit einem Gateway zu entwerfen. REST wird zwischen meinem Backend und meiner Anwendung verwendet. Ich benutze Java Servlet Filter und Spring.REST API-Authentifizierung mit SAML
Ich sehe zwei Möglichkeiten:
die SAML-Token in den Header jedes Mal hinzufügen.
Einmal mit SAML authentifizieren und dann eine Sitzung oder eine ähnliche (sichere Konversation) zwischen dem Client und dem Gateway verwenden.
Fall 1: Es ist eine gute Lösung, weil wir noch RESTful sind aber:
- SAML-Token sind ziemlich groß. Es ist möglicherweise ein Problem aufgrund der großen Header-Größe.
- Die Wiedergabe von Tokens ist nicht der beste Weg für Sicherheitsbedenken.
Fall 2: Es ist nicht mehr staatenlos und ich muss eine Verbindung mit dem Client verwaltet. Da ich ein Gateway verwende, können die zugrunde liegenden Dienste immer RESTful sein.
Fall 2 sucht nach der besseren Wahl trotz der Tatsache, dass es nicht den Ruhezwängen folgt.
Hat jemand das schon gemacht und mir ein paar Hinweise gegeben (für Design oder Implementierung)?
Gibt es einen besseren Weg, es mit SAML zu tun?
Jede Hilfe oder Beratung ist willkommen.
Verwenden Sie den zweiten Ansatz. Viele Diensteanbieter werden die wiedergegebenen Token trotzdem ablehnen. Ist dies zur Authentifizierung von Benutzern oder Ihrer Client-Software? – tom
Es ist Benutzer zu authentifizieren – Nereis
Sie können auch sehen, mit OAuth2 für die gleiche, wenn Sie SAML abwechselnd geöffnet haben. –