Single-Sign-On-Implementierung in C# unter Verwendung von SAML 2.0

Letzten Woche habe ich eine Menge Forschung auf das Thema der Verwendung von Single-Sign-On mit SAML 2.0. Ich habe eine Menge guter Artikel und ich verstehe den Prozess der SSO im detail, aber ich bin auf Probleme bei der Umsetzung es in unserer C# Lösung mit .Net Framework 4.5.

Lassen Sie mich beschreiben, mein Verständnis des Prozesses und wie Stell ich sollte gehen über das anwenden es:

  1. Den Benutzer geht an unsere software, die den Service Provider (SP). Wir haben verschiedene Instanzen getrimmt, um die Bedürfnisse unserer Kunden.
  2. Nach der Eingabe der E-Mail-Adresse, er sollte sein umadressiert zu unserer
    Identity Provider (IdP). An dieser Stelle ich glaube, ich sollte senden
    ein token zur Authentifizierung, um zu überprüfen, ob der Benutzer noch nicht angemeldet
    in den IdP. Im Falle der Benutzer ist, möchte ich login des Benutzers
    zu unserem system. In den Fall ist er nicht, er würde, dann melden Sie sich auf Ihre IdP.
  3. Nachdem er erfolgreich authentifiziert ist, senden wir SAML Antwort-token zurück zu unserem website-URL.
  4. Wenn der Spielstein kommt auf unserer Seite, sollten wir Sie entschlüsseln und wenn die Authentifizierung erfolgreich, gewähren Sie dem Benutzer Zugriff auf den Dienst.

So weit ich habe nicht gefunden eine gute Ressourcen auf den eigentlichen Prozess der Erstellung der SAML-Anforderung oder eine Möglichkeit der Entschlüsselung unserer SAML token in der C# code.

Für die Tests, die wir mit ADFS 2.0 als IdP und wir sind immer die SAML Antwort von ihm. Wenn wir die Antwort hätten wir gerne vergleichen die Informationen in unsere Datenbank mit E-Mail in die Antwort zu überprüfen, die Benutzer details lassen, bevor Sie Sie in das system.

Den Beispielen, die ich finden konnte sind entweder veraltet oder nicht die ausführliche Erklärung. Wenn jemand in der Lage wäre glänzen etwas Licht auf das für mich, entweder durch die Bereitstellung einige Beispiele der Umsetzung oder eine gute und aktuelle Ressource, die ich noch nicht geschafft zu finden.

haben Sie einen Blick auf diese Beiträge: C# ASP.NET Single-Sign-On-Implementierung und SSO Verwendung von SAML2.0 in asp.net
Vielleicht ist das off-topic, aber viele Menschen beginnen zu prüfen, die auf SAML-eine "legacy" - Protokoll für web-SSO zu Gunsten von oauth/openid connect. Wenn Sie erstellen von Grund auf, Sie könnten mehr Zukunftssicherheit geht, die route.

InformationsquelleAutor mbajer92 | 2017-01-11

Schreibe einen Kommentar