2016-04-22 25 views
2

Ich implementiere Authentifizierung mit Azure AD in C# MVC 5.0-Anwendung. Ich habe den Azure AD B2C-Mandanten erstellt. In meinem Lehrplan sind drei Anwendungen registriert.Azure AD B2C Single-Sign-On-Implementierung

Ich möchte Single Sign-On implementieren, wenn der Benutzer in einer Anwendung angemeldet ist, wird er auch direkt in anderen Anwendungen angemeldet.

Ich habe versucht, die Lösungen im Web zu finden, fand aber keine klare Hilfe, wie ich damit anfangen und implementieren kann.

Jede Hilfe von der Gemeinschaft wäre zu schätzen! Danke im Voraus.

Antwort

1

Wenn Sie Browsersitzungscookies haben, sollten Sie in der Lage sein, SSO über die gesamte App zu erhalten. Sie sollten auch die Microsoft Authentication Library (MSAL) in Betracht ziehen, die unter https://www.nuget.org/packages/Microsoft.Identity.Client verfügbar ist. Diese Bibliothek befindet sich noch in der Vorschau.

+0

Dank Kanishk .. Was ich suche ist allgemeine Kodierungsstruktur, die wir mit Microsoft ADAL-Bibliothek verwenden können, um es zu erreichen, möchte ich nicht unsere benutzerdefinierte Logik zu implementieren SSO für jetzt, es wäre die letzte Option – Chidrup

+0

Es gibt einige Beispiele unter https://github.com/azure-samples?query=active-directory –

2

, wenn der Benutzer in einem einer Anwendung protokolliert wird er auch in anderen Anwendungen direkt angemeldet sein

Logging in eine der Anwendungen nicht den Benutzer machen automatisch in anderen angemeldet Anwendungen. Dies geschieht nur nach der Benutzer durchsucht die Anwendung und das SSO-Protokoll übernimmt die Kontrolle über den Browser für die Handshake-Sequenz.

Aus der Benutzerperspektive macht dies keinen Unterschied. Sie navigieren zu einer Ihrer Apps und diese sind eingeloggt. Normalerweise bemerken sie nicht einmal die Redirect/Response-Sequenz.

Denken Sie in Bezug auf eine Kasse in einem Kino (der SSO Identity Provider, Azure in Ihrem Fall) und mehrere Zugänge zum Theater (Ihre Anwendungen). Der Kauf eines Tickets (Anmeldung beim Identity Provider) macht nicht automatisch alle Ticket-Inspektoren darauf aufmerksam (Sie sind nicht automatisch überall angemeldet). Wenn Sie sich einem bestimmten Eingang nähern und Ihr Ticket vorzeigen, akzeptiert der jeweilige Ticketprüfer das Ticket und Sie dürfen eintreten (Sie melden sich bei einer der Anwendungen an und akzeptieren das Token vom Identity Provider), ohne dass andere Inspektoren dies bemerken mir nicht bewusst, dass du dich gerade irgendwo eingeloggt hast).

Im technischen Teil implementiert Azure sowohl OAuth2- als auch WS-Fed-Protokolle. Sie können zahlreiche Tutorials finden, wie Sie eine Web-App mit einem der beiden integrieren können. Wenn Sie Hilfe bei bestimmten technischen Problemen benötigen, können Sie gerne neue spezifische Fragen stellen. Denken Sie daran, nur auf bestimmte Fragen, Fragen zu möglichen Empfehlungen (sollte ich lieber OAuth2 oder WS-Fed? oder Welche spezifische Client-Bibliothek sollte ich für OAuth2 verwenden?) nicht ganz passen hier und wahrscheinlich sein geschlossen.

+0

Ja Danke @Wiktor, Entschuldigung für meine schlechte Erklärung. Ich meine, dass nur, wenn Benutzer durch ein anderes Anwendungsprotokoll navigieren, automatisch die Kontrolle übernimmt und der Benutzer sich anmeldet. Könnten Sie bitte einen nützlichen Tutorial-Link geben, der feet für Azure AD B2C-Nutzer enthält? – Chidrup

+1

Hilft das? https://azure.microsoft.com/en-us/documentation/articles/active-directory-authentication-scenarios/ –

+0

Ausgezeichnete Antwort, Wiktor. Es gibt eine Seite, die auch die SSO-Szenarien beschreibt - https://azure.microsoft.com/de-de/dokumentation/artikel/active-directory-appssoaccess-whatis / –

Verwandte Themen