Kódminta: ASP.NET MVC 4 összevont kijelentkezéssel
Frissítve: 2015. június 19.
A következőkre vonatkozik: Azure
Ez a minta bemutatja, hogyan integrálható Microsoft Azure Active Directory Access Control (más néven Access Control Service vagy ACS) egy ASP.NET MVC 4-alkalmazással. Az ACS-integráció lehetővé teszi az egyszeri bejelentkezést és az egyszeri kijelentkezési funkciókat a támogatott identitásszolgáltatók számára egy ASP.NET MVC 4-alkalmazásban.
A minta kódja a Microsoft Azure Active Directory Access Control (ACS) kódminták csomagjának ASPNETSimpleMVC4 (C#\Websites\ASPNETSimpleMVC4) alkönyvtárában található.
Az ACS egyszeri kijelentkezés funkciójával kapcsolatos további információkért lásd az egyszeri kijelentkezésről szóló részt.
Előfeltételek
A minta futtatásához a következőkre lesz szüksége:
Egy fiók a Azure Portal (https://go.microsoft.com/fwlink/?LinkID=275081) és egy Access Control névtérben. Ez a minta egy Access Control acssamples nevű névteret használ. A névtér neve eltérő lehet.
A Access Control névtér létrehozásával kapcsolatos további információkért lásd: Access Control-névtér létrehozása.
Visual Studio 2012
Identity and Access Tool for Visual Studio 2012 (https://msdn.microsoft.com/library/hh545418.aspx)
További információkért lásd az ACS előfeltételeit.
A minta konfigurálása
A minta konfigurálásához használhatja az ACS felügyeleti portált vagy az ACS felügyeleti szolgáltatást. Ez a témakör mindkét lehetőséget ismerteti.
1. lehetőség: Az ACS felügyeleti portál használata
2. lehetőség: Az ACS felügyeleti szolgáltatás használata
1. lehetőség: Az ACS felügyeleti portál használata
A minta konfigurálása az ACS felügyeleti portál használatával
Nyissa meg a Microsoft Azure felügyeleti portált (https://manage.WindowsAzure.com), jelentkezzen be, majd kattintson az Active Directoryra. (Hibaelhárítási tipp: Az "Active Directory" elem hiányzik vagy nem érhető el)
Access Control névtér létrehozásához kattintson az Új, az App Services, a Access Control, majd a Gyors létrehozás parancsra. (Vagy kattintson Access Control Névterek elemre, mielőtt az Új gombra kattint.)
Egy Access Control névtér kezeléséhez jelölje ki a névteret, majd kattintson a Kezelés gombra. (Vagy kattintson Access Control Névterek elemre, jelölje ki a névteret, majd kattintson a Kezelés gombra.)
Megnyílik az ACS felügyeleti portálja.
Ha azt szeretné, hogy az alkalmazás felhasználói bejelentkezhessenek Google - vagy Yahoo! -identitásukkal, kattintson az Identitásszolgáltatók elemre, majd a Hozzáadás gombra, majd adja hozzá a Google-t és a Yahoo!-t.
Útmutatásért tekintse meg a Google-t ACS-identitásszolgáltatóként , a Yahoo!-t pedig ACS Identity Providerként. Windows Live ID (Microsoft-fiók) alapértelmezés szerint hozzáadódik, és nem törölhető.
Ha regisztrálni szeretné az alkalmazást az ACS-ben, kattintson a Függő entitás alkalmazásaira, kattintson a Hozzáadás gombra, írja be az alábbi adatokat az űrlapon, majd kattintson a Mentés gombra.
A Név mezőbe írja be az ASPNETMVC4Sample nevet.
A Tartomány mezőbe írja be a következőt: https://localhost:65000/
A Visszatérési URL-cím mezőbe írja be a következőt: https://localhost:65000/
A Hiba URL-cím mezőjébe írja be a következőt: https://localhost:65000/Error
A Token formátum mezőjében válassza az SAML 2.0 elemet.
A Jogkivonat-aláírás mezőben válassza a Szolgáltatásnévtér-tanúsítvány használata (standard) lehetőséget.
A függő entitás alkalmazásának hozzáadása lapon található mezőkkel és értékekkel kapcsolatos információkért lásd: Függő entitásalkalmazások.
Ha olyan szabálycsoportot szeretne létrehozni, amely az identitásszolgáltatók által kiadott összes jogcímet elküldi a függő entitás alkalmazásának, kattintson a Szabálycsoportok elemre, kattintson az ACS Simple MVC4-minta alapértelmezett szabálycsoportja elemre, majd a Létrehozás, majd a Clidk Mentés parancsára.
Az ACS-portál Szabálycsoportok szakasza hozza létre azokat a szabályokat, amelyek meghatározzák, hogy az ACS mely jogcímeket küldi el az alkalmazásnak. Az összes létrehozott szabály kiválasztásával úgy konfigurálja az ACS-t, hogy az identitásszolgáltatók által kiadott összes jogcímet továbbítsa a függő entitásalkalmazásnak.
A minta most már konfigurálva van, és készen áll a 2012-Visual Studio való futtatásra.
2. lehetőség: Az ACS felügyeleti szolgáltatás használata
A Visual Studio mintamegoldás egy ConfigureSample nevű konzolalkalmazással rendelkezik, amely az ACS Felügyeleti szolgáltatást és a Közös osztálytárban definiált közös segítőket használja. Ezzel az alkalmazással konfigurálhatja a Access Control névteret a mintával való használatra.
A minta konfigurálása az ACS Felügyeleti szolgáltatással
A minta konfigurálásához nyissa meg a SamplesConfiguration.cs fájlt (acs\Management\ManagementService\Common). Cserélje le a Common class library SamplesConfiguration osztályának helyőrzőit a Access Control névtérre vonatkozó információkra. Az információkat az ACS felügyeleti portálon találja.
Az ACS felügyeleti portálra való navigáláshoz nyissa meg a Microsoft Azure felügyeleti portált (https://manage.WindowsAzure.com), jelentkezzen be, majd kattintson az Active Directoryra. (Hibaelhárítási tipp: Az "Active Directory" elem hiányzik vagy nem érhető el) Egy Access Control névtér kezeléséhez jelölje ki a névteret, majd kattintson a Kezelés gombra. (Vagy kattintson Access Control Névterek elemre, jelölje ki a névteret, majd kattintson a Kezelés gombra.)
ServiceNamespace – Adja meg a Access Control névtér nevét.
ManagementServiceIdentityName – Adja meg egy ACS felügyeleti szolgáltatásfiók nevét. Az alapértelmezett érték a ManagementClient.
A felügyeleti szolgáltatásfiók nevének megkereséséhez az ACS felügyeleti portálon kattintson a Felügyeleti szolgáltatás elemre. A fiókok név szerint vannak felsorolva a Felügyeleti szolgáltatásfiókok területen.
ManagementServiceIdentityKey – Adja meg a felügyeleti szolgáltatásfiók jelszavát.
A felügyeleti szolgáltatásfiók jelszavának megkereséséhez az ACS felügyeleti portálon kattintson a Felügyeleti szolgáltatás elemre. Kattintson egy felügyeleti szolgáltatásfiók nevére, majd a Hitelesítő adatok területen kattintson a Jelszó elemre. A jelszó megjelenik a Jelszó mezőben. A jelszó másolásához kattintson a Jelszó megjelenítése gombra.
Futtassa a ConfigureSample alkalmazást Visual Studio. Az alkalmazás a SamplesConfiguration.cs fájlban található adatok alapján konfigurálja az ACS-t a minta futtatására.
A minta futtatása
A minta futtatása
Nyissa meg az ASPNETSimpleMVC4.sln (C#\Websites\ASPNETSimpleMVC4\) minta megoldásfájlját a 2012-Visual Studio.
Kattintson a jobb gombbal a projektre, és válassza az Identitás és az Access lehetőséget a helyi menüből.
Válassza az Azure Access Control Szolgáltatás használata lehetőséget.
Egy vagy több szolgáltató kiválasztása mellett kattintson a Konfigurálás gombra.
Adja meg a Access Control névteret és a felügyeleti szolgáltatásfiók jelszavát.
Válasszon ki egy vagy több identitásszolgáltatót a listából.
A megjelenő identitásszolgáltatók azok, amelyeket a minta ACS-portálon vagy az ACS felügyeleti szolgáltatásban való konfigurálásakor adott hozzá.
A függő entitásalkalmazás most már konfigurálva van az ACS használatára.
Az alkalmazás futtatásához nyomja le az F5 billentyűt. A böngésző az ACS Kezdőlap-felderítési oldalára lesz irányítva.
Kattintson a Google gombra. A böngésző átirányítja a Google bejelentkezési oldalára.
Adja meg egy Google-fiók hitelesítő adatait, és utasítsa el a felhasználói hozzájárulási űrlapot.
Your browser is redirected to https://localhost:65000/. Figyelje meg, hogy a Google-felhasználóneve megjelenik az oldal bal felső sarkában. Ez azt jelzi, hogy bejelentkezett a függő entitás alkalmazásába. Ha ki szeretne jelentkezni a függő entitás alkalmazásából, kattintson a Kijelentkezés hivatkozásra. Figyelje meg, hogy már nincs hitelesítve.
Lásd még:
Alapelvek
Útmutató: Access Control-névtér létrehozása
ACS felügyeleti szolgáltatás