Authentifizierung mit OWIN und WsFederation für MVC, Web API und SignalR Apps

8

Für mein Unternehmen muss ich einen POC erstellen, um zu prüfen, ob wir die wsFederation-Authentifizierung für unser Projekt verwenden können, das eine MVC-App, einige Webapi-Controller und einige SignalR-Hubs in verschiedenen Projekten enthält. Außerdem möchten wir die OWIN-Authentifizierungs-Middleware sowohl in den Client-Apps als auch in der Identity-Provider-App verwenden.

Ich benutze Thinktecture Identity Server v2 als Identity-Provider für einen Start (aber wir müssen irgendwann selbst entwickeln). Für die MVC-App ist es ziemlich einfach und es funktioniert gut, mit einem SAML2-Token.

Aber jetzt wird es etwas komplizierter, da ich möchte, dass ein authentifizierter Benutzer in der Web-App eine Controller-Methode von der Web-API-App aufrufen kann (die sich von der MVC unterscheidet), Verwenden von Ajax-Anrufen.

Ich habe viele Dinge über das Delegieren und actAs-Tokens gelesen, aber ich bin ein wenig verloren und weiß nicht, wo und wie ich diesen Teil starten soll. Außerdem kann ich nichts über Delegierung mit OWIN-Authentifizierung finden.

Meine erste Frage lautet also: Ist es möglich, dies zu erreichen? Und dann: Könnte mir jemand in die richtige Richtung zeigen?

    
PAP 19.05.2014, 22:37
quelle

1 Antwort

1

Ich habe Vittorio Bertoccis Anweisungen gefolgt, als ich daran arbeitete.

Ссылка

Ein paar Notizen dazu, wo es JWTSecurityTokenHandler heißt, es ist jetzt JwtSecurityTokenHandler. Es ist ein kleiner Tippfehler, aber es ist eine gute Möglichkeit, 15 Minuten zu verlieren, wenn Sie sich dessen nicht bewusst sind.

Ich konnte den Abschnitt X509 FindByThumbprint auch nicht verwenden. Ich denke, dass mein lokales Zertifikat nicht ordnungsgemäß registriert wurde. Sobald ich morgen bei der Arbeit bin, werde ich posten, was ich ändern musste, um es zur Arbeit zu bringen.

Dominick Baier ( Ссылка ) macht auch einen Kurs über die Plurality namens WebApi v2 Security, der sehr gut darüber spricht, wie man in die Sicherheit eindringen kann Pipeline und Einrichtung der Web-API-Projekt, um damit umzugehen.

Als weitere Option können Sie die TokenValidationHandler-Klasse ersetzen, die Vittorio mit dem Microsoft.Owin.Security.Jwt-Paket verwendet, und den folgenden Code in die Datei Startup.cs implementieren.

%Vor%     
DavidEdwards 15.07.2014 02:26
quelle