43 Stimmen

SAML einfaches Beispiel für Anfänger

Ich bin Anfänger in der SAML v2.0 Technologie und ich habe das theoretische Wissen, aber ich habe keine Beispiele bei Google gefunden. Kann mir jemand ein Schritt-für-Schritt-Beispiel für einfaches "SAML für v2.0" zur Verfügung stellen?

  1. Bis jetzt habe ich den theoretischen Teil durchgearbeitet, d.h., es unterstützt Single Sign-On und ich verstehe auch den Service Provider und den Identity Provider.
  2. Derzeit arbeite ich in einer Linux-Umgebung.
  3. Ich benötige ein grundlegendes Beispiel in schrittweiser Weise, wie die Anfrage von Benutzer -> Identity Provider -> Service Providergerüzht und wie die Umgebung konfiguriert wird.
  4. Ist es möglich, das Beispiel für die SAML v2.0 auszuführen?
  5. Gibt es eine Möglichkeit, ein SAML-Beispiel in der Programmiersprache Java auszuführen? Falls dies möglich ist, können Sie auch ein Beispiel in Java bereitstellen.

31voto

Stefan Rasmusson Punkte 5311

Typisches SSO mit SAML wird als sogenanntes Web-SSO-Profil bezeichnet. Auf dem Markt gibt es viele Produkte, die dies unterstützen, wie z.B. OpenAM, Shibboleth, OpenSAML und Oracle Identity Federation. Die spezifische Konfiguration hängt davon ab, welches Produkt Sie wählen. Ein funktionierendes Beispiel für OpenSAML, das ich in meinem Buch verwende, finden Sie hier.

Auf SAML-Ebene tauschen der SP und IDP Metadaten aus, die Konfigurationsinformationen darüber enthalten, wie der SP und IDP kommunizieren möchten.

SSO erfolgt dann in vier Schritten:

  1. Der SP stellt fest, dass der Benutzer keine authentifizierte Sitzung hat.
  2. Der SP leitet den Benutzer mit einer SAML-AuthnRequest als URL-Parameter an den IDP weiter.
  3. Der IDP authentifiziert den Benutzer und leitet ihn mit einem Artefakt im URL-Parameter zurück an den SP.
  4. Der SP tauscht das Artefakt gegen eine Assertion über SOAP aus, indem ein ArtifactResolveRequest an den IDP gesendet wird.

Wenn Sie dies in Java selbst codieren möchten, können Sie OpenSAML verwenden. Auf meinem Blog finden Sie viele Beispiele dazu.

In meinem Buch Ein Leitfaden für OpenSAML schreibe ich viel darüber.

EDIT Die neue Ausgabe des Buches ist jetzt erhältlich und deckt OpenSAML v3 ab.

6voto

Vladimír Schäfer Punkte 15383

Sie können einfach den Schritten in diesem Handbuch folgen, das Ihnen helfen wird, eine einfache SAML 2.0-Föderation zwischen einem lokalen Dienstanbieter und einem öffentlichen Identitätsanbieter zu erstellen.

Nachdem Sie dies eingerichtet haben, können Sie es verwenden, um Nachrichten zwischen IDP/SP zu verfolgen und auch als Beispiel für ein mit Java + OpenSAML + Spring erstelltes SAML-Modul.

Es gibt auch viele andere gute Informationsquellen zu SAML, wie der oben genannte Blog von Stefan.

0voto

Golap Hazarika Punkte 84

Bildbeschreibung hier eingeben

Was ist Single Sign-On:

Single Sign-On ist ein standardisiertes Konzept, das es einem Endbenutzer ermöglicht, über einen einzigen Einstiegspunkt auf mehrere, verwandte aber unabhängige Softwareanwendungen zuzugreifen. Das bedeutet, dass sich ein Endbenutzer nur einmal in ein System einloggen kann und dann auf mehrere Anwendungen zugreifen kann, ohne sich erneut anmelden zu müssen. Der Authentifizierungsprozess kann in ein einzelnes Komponente zusammengeführt werden, die als Gateway für jede andere Anwendung fungiert. Es verwaltet im Grunde genommen die Identität von Endbenutzern auf effektive und sichere Weise.

Für weitere Informationen Hier weiterlesen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X