Share via


Codebeispiel: ASP.NET MVC 4 mit Partneranmeldung

Aktualisiert: 19. Juni 2015

Gilt für: Azure

In diesem Beispiel wird veranschaulicht, wie sie Microsoft Azure Active Directory Access Control (auch als Access Control Service oder ACS bezeichnet) in eine ASP.NET MVC 4-Anwendung integrieren. Die ACS-Integration ermöglicht Funktionen für einmaliges An- und Abmelden für unterstützte Identitätsanbieter in einer ASP.NET MVC 4-Anwendung.

Der Code für dieses Beispiel befindet sich im Unterverzeichnis von ASPNETSimpleMVC4 (C#\Websites\ASPNETSimpleMVC4) des Codebeispielpakets Microsoft Azure Active Directory Access Control (ACS).

Weitere Informationen zum Einmaligen Abmelden in ACS finden Sie unter Einmaliges Abmelden.

Voraussetzungen

Für dieses Beispiel benötigen Sie Folgendes:

Weitere Informationen finden Sie unter ACS-Voraussetzungen.

Konfigurieren des Beispiels

Sie können das ACS-Verwaltungsportal oder den ACS-Verwaltungsdienst verwenden, um dieses Beispiel zu konfigurieren. In diesem Thema werden beide Optionen beschrieben.

  • Option 1: Verwenden des ACS-Verwaltungsportals

  • Option 2: Verwenden des ACS-Verwaltungsdiensts

Option 1: Verwenden des ACS-Verwaltungsportals

So konfigurieren Sie das Beispiel mithilfe des ACS-Verwaltungsportals

  1. Wechseln Sie zum Microsoft Azure Verwaltungsportal (https://manage.WindowsAzure.com), melden Sie sich an, und klicken Sie dann auf Active Directory. (Tipp zur Problembehandlung: Das Element "Active Directory" fehlt oder ist nicht verfügbar)

  2. Um einen Namespace für die Zugriffssteuerung zu erstellen, klicken Sie auf Neu, auf Anwendungsdienste, auf Zugriffssteuerung und dann auf Schnellerfassung. (Oder klicken Sie auf Namespaces für die Zugriffssteuerung und dann auf Neu.)

  3. Um einen Namespace für die Zugriffssteuerung zu verwalten, wählen Sie den Namespace aus und klicken Sie dann auf Verwalten. (Oder klicken Sie auf Namespaces für die Zugriffssteuerung, wählen Sie den Namespace aus und klicken Sie dann auf Verwalten.)

    Das ACS-Verwaltungsportal wird geöffnet.

  4. Um Benutzern Ihrer Anwendung die Anmeldung mit ihren Google - oder Yahoo! -Identitäten zu ermöglichen, klicken Sie auf Identitätsanbieter, klicken Sie auf "Hinzufügen ", und fügen Sie dann Google und Yahoo!hinzu.

    Anweisungen finden Sie unter Google als ACS Identity Provider und Yahoo! als ACS Identity Provider. Windows Live ID (Microsoft-Konto) wird standardmäßig hinzugefügt und kann nicht gelöscht werden.

  5. Wenn Sie Ihre Anwendung bei ACS registrieren möchten, klicken Sie auf Anwendungen mit vertrauenden Parteien, klicken Sie auf "Hinzufügen", geben Sie die folgenden Informationen in das Formular ein, und klicken Sie dann auf "Speichern".

    • Geben Sie im Feld Name die Angabe ASPNETMVC4Sample ein.

    • Geben Sie im Feld "Bereich " die Eingabetaste ein. https://localhost:65000/

    • Geben Sie im Feld "Rückgabe-URL " die Eingabetaste ein. https://localhost:65000/

    • Geben Sie im Feld "Fehler-URL " die Eingabetaste ein. https://localhost:65000/Error

    • Wählen Sie im Feld Tokenformat die Option SAML 2.0 aus.

    • Wählen Sie im Feld Tokensignatur die Option Dienstnamespacezertifikat verwenden (Standard) aus.

    Informationen zu den Feldern und Werten auf der Seite "Anwendung für vertrauende Parteien hinzufügen" finden Sie unter "Anwendungen für vertrauende Parteien".

  6. Klicken Sie zum Erstellen einer Regelgruppe, die alle von den Identitätsanbietern ausgestellten Ansprüche an die Anwendung der vertrauenden Seite sendet, auf Regelgruppen, klicken Sie auf Standardregelgruppe für ACS Simple MVC4 Sample, und klicken Sie dann auf Generieren. Klicken Sie anschließend auf Speichern.

    Der Abschnitt "Regelgruppen" des ACS-Portals erstellt die Regeln, die bestimmen, welche Ansprüche ACS an Ihre Anwendung sendet. Indem Sie alle generierten Regeln auswählen, konfigurieren Sie ACS, um alle von den Identitätsanbietern ausgestellten Ansprüche an die Anwendung der vertrauenden Partei zu senden.

Das Beispiel ist jetzt konfiguriert und kann in Visual Studio 2012 ausgeführt werden.

Option 2: Verwenden des ACS-Verwaltungsdiensts

Die Visual Studio Beispiellösung verfügt über eine Konsolenanwendung namens ConfigureSample, die den ACS-Verwaltungsdienst und die in der allgemeinen Klassenbibliothek definierten Hilfsprogramm verwendet. Sie können diese Anwendung verwenden, um Ihren Access Control Namespace für die Verwendung mit diesem Beispiel zu konfigurieren.

So konfigurieren Sie das Beispiel mithilfe des ACS-Verwaltungsdiensts

  1. Öffnen Sie zum Konfigurieren des Beispiels SamplesConfiguration.cs (acs\Management\ManagementService\Common). Ersetzen Sie die Platzhalter in der SamplesConfiguration-Klasse in der Allgemeinen Klassenbibliothek durch Informationen zu Ihrem Access Control Namespace. Sie finden die Informationen im ACS-Verwaltungsportal.

    Um zum ACS-Verwaltungsportal zu navigieren: Wechseln Sie zum Microsoft Azure Verwaltungsportal (https://manage.WindowsAzure.com), melden Sie sich an, und klicken Sie dann auf Active Directory. (Tipp zur Problembehandlung: Das Element "Active Directory" fehlt oder ist nicht verfügbar) Um einen Access Control Namespace zu verwalten, wählen Sie den Namespace aus, und klicken Sie dann auf "Verwalten". (Oder klicken Sie auf Namespaces für die Zugriffssteuerung, wählen Sie den Namespace aus und klicken Sie dann auf Verwalten.)

    • ServiceNamespace – Geben Sie den Namen Ihres Access Control Namespace ein.

    • ManagementServiceIdentityName – Geben Sie den Namen eines ACS-Verwaltungsdienstkontos ein. Der Standardwert ist "ManagementClient".

      Um den Namen des Verwaltungsdienstkontos zu finden, klicken Sie im ACS-Verwaltungsportal auf den Verwaltungsdienst. Die Konten werden nach ihrem Namen unter Verwaltungsdienstkonten aufgelistet.

    • ManagementServiceIdentityKey – Geben Sie das Kennwort für das Verwaltungsdienstkonto ein.

      Um das Kennwort für das Verwaltungsdienstkonto zu finden, klicken Sie im ACS-Verwaltungsportal auf den Verwaltungsdienst. Klicken Sie auf den Namen eines Verwaltungsdienstkontos, und klicken Sie dann unter Anmeldeinformationen auf Kennwort. Das Kennwort wird im Feld Kennwort angezeigt. Klicken Sie zum Kopieren des Kennworts auf Kennwort anzeigen.

  2. Führen Sie die ConfigureSample-Anwendung in Visual Studio aus. Die Anwendung verwendet die Daten in SamplesConfiguration.cs , um ACS zum Ausführen des Beispiels zu konfigurieren.

Ausführen des Beispiels

So führen Sie das Beispiel aus

  1. Öffnen Sie die Lösungsdatei für das Beispiel, ASPNETSimpleMVC4.sln (C#\Websites\ASPNETSimpleMVC4\), in Visual Studio 2012.

  2. Klicken Sie mit der rechten Maustaste auf das Projekt, und wählen Sie dann Identität und Zugriff aus dem Kontextmenü aus.

  3. Wählen Sie Azure Access Control Service verwenden aus.

  4. Klicken Sie neben Mindestens einen Anbieter auswählen auf Konfigurieren.

  5. Geben Sie Ihr Kennwort für den Access Control Namespace und das Verwaltungsdienstkonto ein.

  6. Wählen Sie mindestens einen Identitätsanbieter aus der Liste aus.

    Die Identitätsanbieter, die angezeigt werden, sind diejenigen, die Sie hinzugefügt haben, wenn Sie das Beispiel im ACS-Portal oder dem ACS-Verwaltungsdienst konfiguriert haben.

    Ihre Anwendung der vertrauenden Seite ist nun für die Verwendung von ACS konfiguriert.

  7. Drücken Sie F5, um die Anwendung auszuführen. Ihr Browser wird an die ACS Home Realm Discovery-Seite weitergeleitet.

  8. Klicken Sie auf Google. Ihr Browser wird auf eine Google-Anmeldeseite weitergeleitet.

  9. Geben Sie die Anmeldeinformationen für ein Google-Konto ein, und lehnen Sie das Formular für die Benutzerzustimmung ab.

Ihr Browser wird zu https://localhost:65000/ umgeleitet. Beachten Sie, dass Ihr Google-Benutzername in der oberen rechten Ecke der Seite angezeigt wird. Dies zeigt an, dass Sie bei der Anwendung der vertrauenden Seite angemeldet sind. Wenn Sie sich von der Anwendung der vertrauenden Seite abmelden möchten, klicken Sie auf den Abmeldelink. Beachten Sie, dass Sie nicht mehr authentifiziert sind.

Weitere Informationen

Konzepte

Vorgehensweise: Erstellen eines Access Control Namespace
ACS-Verwaltungsdienst