Es gibt eine question about using SAML in ASP.Net Core, aber ich brauche zusätzliche Hilfe.ASP.Net Core - Verwandle SAML Assertion in ClaimsPrincipal
Die einzige Antwort dort erwähnt Kentor.AuthServices, aber ich verstehe nicht, wie man es benutzt. Alles, was ich in dieser oder anderen SAML-Bibliotheken, der Dokumentation, den Blog-Posts und den Beispielanwendungen finde, dreht sich alles darum, einige externe Authentifizierungsdienste zu kontaktieren und die An- und Abmeldung durchzuführen.
Aber ich brauche nichts davon. Das Setup, mit dem ich arbeite, funktioniert in einer kantenorientierten Firewall-Anwendung, und Anmelde-/Abmeldungsanfragen erreichen meine Anwendung nie. Alles, was ich bekomme, ist ein SAML-Token in einem Cookie, den ich validieren und in ein ClaimsPrincipal verwandeln muss. Ich kann nicht (das Setup des Bereitstellungsnetzwerkes ist wahnsinnig paranoid) und möchte keinen Identitätsanbieter kontaktieren.
Momentan habe ich ein Stück Middleware geschrieben, das den Cookie aufnimmt, analysiert und die Teile analysiert, die ich für den Claims Principal benötige. Ich überprüfe aber weder die XML-Signatur noch die SAML-Gültigkeit (gültige Zeitattribute etc.). Mit .Net Core 2.0 Preview 2 kann ich die Validierung der XML-Signatur durchführen, bin aber immer noch dabei, die SAML-Validierung durchzuführen. Gibt es eine Bibliothek, die SAML-Einschränkungen einfach validiert und nichts anderes tut (oder zumindest wo ich alles andere ignorieren kann)? Ich glaube, Kentor oder ITfoxtec oder elerchs SAML2.Core muss solche Funktionalität enthalten, aber ich kann nicht herausfinden, wo es ist.