Dela via


Kodexempel: ASP.NET MVC 4 med federerad utloggning

Uppdaterad: 19 juni 2015

Gäller för: Azure

Det här exemplet visar hur du integrerar Microsoft Azure Active Directory Access Control (även kallat Access Control Service eller ACS) med ett ASP.NET MVC 4-program. ACS-integrering möjliggör funktioner för enkel inloggning och enkel utloggning för identitetsprovidrar som stöds i ett ASP.NET MVC 4-program.

Koden för det här exemplet finns i underkatalogen ASPNETSimpleMVC4 (C#\Websites\ASPNETSimpleMVC4) för Microsoft Azure Active Directory Access Control-kodexempelpaketet (ACS).

Mer information om funktionen för enkel utloggning i ACS finns i Enkel utloggning.

Förutsättningar

Om du vill köra det här exemplet behöver du:

Mer information finns i KRAV för ACS.

Konfigurera exemplet

Du kan använda ACS-hanteringsportalen eller ACS-hanteringstjänsten för att konfigurera det här exemplet. I det här avsnittet beskrivs båda alternativen.

  • Alternativ 1: Använda ACS-hanteringsportalen

  • Alternativ 2: Använda ACS-hanteringstjänsten

Alternativ 1: Använda ACS-hanteringsportalen

Så här konfigurerar du exemplet med hjälp av ACS-hanteringsportalen

  1. Gå till Microsoft Azure Management Portal (https://manage.WindowsAzure.com), logga in och klicka sedan på Active Directory. (Felsökningstips: "Active Directory"-objektet saknas eller är inte tillgängligt)

  2. Om du vill skapa ett Access Control namnområde klickar du på Nytt, klickar på App Services, klickar på Access Control och sedan på Snabbskapa. (Eller klicka på Access Control namnområden innan du klickar på Ny.)

  3. Om du vill hantera ett Access Control namnområde väljer du namnområdet och klickar sedan på Hantera. (Eller klicka på Access Control Namnområden, välj namnområdet och klicka sedan på Hantera.)

    ACS-hanteringsportalen öppnas.

  4. Om du vill tillåta användare av ditt program att logga in med sina Google - eller Yahoo! -identiteter klickar du på Identitetsprovidrar, klickar på Lägg till och lägger sedan till Google och Yahoo!.

    Anvisningar finns i Google som ACS-identitetsprovider och Yahoo! som ACS-identitetsprovider. Windows Live-ID (Microsoft-konto) läggs till som standard och kan inte tas bort.

  5. Om du vill registrera ditt program med ACS klickar du på Program från förlitande part, klickar på Lägg till, anger följande information i formuläret och klickar sedan på Spara.

    • I fältet Namn anger du ASPNETMVC4Sample.

    • I fältet Sfär anger du https://localhost:65000/

    • I fältet Retur-URL anger du https://localhost:65000/

    • I fältet Fel-URL anger du https://localhost:65000/Error

    • I fältet Tokenformat väljer du SAML 2.0.

    • I fältet Tokensignering väljer du Använd tjänstnamnområdescertifikat (standard).

    Information om fälten och värdena på sidan Lägg till förlitande part-program finns i Program från förlitande part.

  6. Om du vill skapa en regelgrupp som skickar alla anspråk som utfärdats av identitetsprovidrar till det förlitande partprogrammet klickar du på Regelgrupper, klickar på Standardregelgrupp för ACS Simple MVC4-exempel och klickar på Generera och sedan på clidk Spara.

    Avsnittet Regelgrupper i ACS-portalen skapar regler som avgör vilka anspråk SOM ACS skickar till ditt program. Genom att välja alla genererade regler konfigurerar du ACS för att skicka alla anspråk som utfärdats av identitetsprovidrar till det förlitande partprogrammet.

Exemplet är nu konfigurerat och klart att köras i Visual Studio 2012.

Alternativ 2: Använda ACS-hanteringstjänsten

Den Visual Studio exempellösningen har ett konsolprogram med namnet ConfigureSample som använder ACS-hanteringstjänsten och de vanliga hjälpkomponenter som definierats i Common-klassbiblioteket. Du kan använda det här programmet för att konfigurera ditt Access Control namnområde för användning med det här exemplet.

Så här konfigurerar du exemplet med hjälp av ACS-hanteringstjänsten

  1. Om du vill konfigurera exemplet öppnar du SamplesConfiguration.cs (acs\Management\ManagementService\Common). Ersätt platshållarna i klassen SamplesConfiguration i Common-klassbiblioteket med information om Access Control namnrymd. Du hittar informationen i ACS-hanteringsportalen.

    Navigera till ACS-hanteringsportalen: Gå till Microsoft Azure-hanteringsportalen (https://manage.WindowsAzure.com), logga in och klicka sedan på Active Directory. (Felsökningstips: "Active Directory"-objektet saknas eller är inte tillgängligt) Om du vill hantera ett Access Control namnområde väljer du namnområdet och klickar sedan på Hantera. (Eller klicka på Access Control Namnområden, välj namnområdet och klicka sedan på Hantera.)

    • ServiceNamespace – Ange namnet på ditt Access Control namnområde.

    • ManagementServiceIdentityName – Ange namnet på ett ACS-hanteringstjänstkonto. Standardvärdet är ManagementClient.

      Om du vill hitta namnet på hanteringstjänstens konto går du till ACS-hanteringsportalen och klickar på Hanteringstjänst. Kontona visas efter namn under Hanteringstjänstkonton.

    • ManagementServiceIdentityKey – Ange lösenordet för hanteringstjänstkontot.

      Om du vill hitta lösenordet för hanteringstjänstens konto går du till ACS-hanteringsportalen och klickar på Hanteringstjänst. Klicka på namnet på ett hanteringstjänstkonto och klicka sedan på Lösenord under Autentiseringsuppgifter. Lösenordet visas i fältet Lösenord . Om du vill kopiera lösenordet klickar du på Visa lösenord.

  2. Kör ConfigureSample-programmet i Visual Studio. Programmet använder data i SamplesConfiguration.cs för att konfigurera ACS för att köra exemplet.

Köra exemplet

Så här kör du exemplet

  1. Öppna lösningsfilen för exemplet, ASPNETSimpleMVC4.sln (C#\Websites\ASPNETSimpleMVC4\), i Visual Studio 2012.

  2. Högerklicka på projektet och välj Identitet och Åtkomst på snabbmenyn.

  3. Välj Använd Azure Access Control Service.

  4. Bredvid Välj en eller flera leverantörer... klickar du på Konfigurera.

  5. Ange lösenordet för ditt Access Control namnområde och hanteringstjänstkonto.

  6. Välj en eller flera identitetsprovidrar i listan.

    Identitetsprovidrar som visas är de som du lade till när du konfigurerade exemplet i ACS-portalen eller ACS-hanteringstjänsten.

    Ditt förlitande partprogram har nu konfigurerats för att använda ACS.

  7. Tryck på F5 för att köra appen. Webbläsaren dirigeras till acs home realm discovery-sidan.

  8. Klicka på Google. Webbläsaren omdirigeras till en Google-inloggningssida.

  9. Ange autentiseringsuppgifterna för ett Google-konto och neka användarmedgivandeformuläret.

Webbläsaren omdirigeras till https://localhost:65000/. Observera att ditt Google-användarnamn visas i det övre vänstra hörnet på sidan. Detta indikerar att du är inloggad i det förlitande partprogrammet. Om du vill logga ut från det förlitande partprogrammet klickar du på länken Logga ut. Observera att du inte längre är autentiserad.

Se även

Begrepp

Anvisningar: Skapa ett Access Control namnområde
ACS-hanteringstjänst