Hitelesítési forgatókönyvek és javaslatok
Ha Azure-alkalmazás Service-ben futó webalkalmazással vagy API-val rendelkezik, a hozzáférést az azt kérő felhasználók vagy alkalmazások identitása alapján korlátozhatja. Az App Service számos hitelesítési megoldást kínál a cél eléréséhez. Ebben a cikkben megismerheti a különböző hitelesítési lehetőségeket, azok előnyeit és hátrányait, valamint azt, hogy milyen hitelesítési megoldást használjon adott forgatókönyvekhez.
Hitelesítési megoldások
- Azure-alkalmazás szolgáltatás beépített hitelesítése – Lehetővé teszi a felhasználók bejelentkezését és az adatok elérését úgy, hogy minimális vagy semmilyen kódot nem ír a webalkalmazásba, a RESTful API-ba vagy a mobil háttérrendszerbe. Közvetlenül a platformba van beépítve, és nem igényel semmilyen nyelvet, könyvtárat, biztonsági szakértelmet vagy akár bármilyen kódot.
- Microsoft Authentication Library (MSAL) – Lehetővé teszi a fejlesztők számára, hogy biztonsági jogkivonatokat szerezzenek be a Microsoft Identitásplatform a felhasználók hitelesítéséhez és a biztonságos webes API-k eléréséhez. Több támogatott platformhoz és keretrendszerhez is elérhető, ezek általános célú kódtárak, amelyek különböző üzemeltetett környezetekben használhatók. A fejlesztők több bejelentkezési szolgáltatóval is integrálhatók, például Microsoft Entra, Facebook, Google, Twitter.
- Microsoft.Identity.Web – Egy magasabb szintű kódtárburkoló MSAL.NET, amely ASP.NET alapvető absztrakciókat biztosít, amelyek leegyszerűsítik a webalkalmazások és a Microsoft Identitásplatform integrálható webes API-k hitelesítési támogatásának hozzáadását. Egy egyfelületű API kényelmi réteget biztosít, amely összekapcsolja ASP.NET Core-t, annak hitelesítési köztes szoftverét és MSAL.NET. Ez a kódtár különböző üzemeltetett környezetekben lévő alkalmazásokban használható. Több bejelentkezési szolgáltatóval is integrálható, például Microsoft Entra, Facebook, Google, Twitter.
Forgatókönyv-javaslatok
Az alábbi táblázat felsorolja az egyes hitelesítési megoldásokat, valamint néhány fontos tényezőt, hogy mikor érdemes használni.
Hitelesítési módszer | Mikor érdemes használni? |
---|---|
Beépített App Service-hitelesítés | * Azt szeretné, hogy kevesebb kód tulajdonosa és kezelése. * Az alkalmazás nyelve és az SDK-k nem biztosítanak felhasználói bejelentkezést vagy engedélyezést. * Nem tudja módosítani az alkalmazás kódját (például az örökölt alkalmazások áttelepítésekor). * A hitelesítést konfigurációval kell kezelnie, nem pedig kóddal. * Külső vagy közösségi felhasználókat kell bejelentkeznie. |
Microsoft Authentication Library (MSAL) | * Szüksége van egy kódmegoldásra a különböző nyelvek egyikében * Egyéni engedélyezési logikát kell hozzáadnia. * Támogatnia kell a növekményes hozzájárulást. * A kódban a bejelentkezett felhasználóval kapcsolatos információkra van szüksége. * Külső vagy közösségi felhasználókat kell bejelentkeznie. * Az alkalmazásnak úgy kell kezelnie a lejáró hozzáférési jogkivonatot, hogy a felhasználó ismét bejelentkezik. |
Microsoft.Identity.Web | * Rendelkezik egy ASP.NET Core-alkalmazással. * A helyi fejlesztés során egyszeri bejelentkezésre van szüksége az IDE-ben. * Egyéni engedélyezési logikát kell hozzáadnia. * Támogatnia kell a növekményes hozzájárulást. * Feltételes hozzáférésre van szüksége a webalkalmazásban. * A kódban a bejelentkezett felhasználóval kapcsolatos információkra van szüksége. * Külső vagy közösségi felhasználókat kell bejelentkeznie. * Az alkalmazásnak úgy kell kezelnie a lejáró hozzáférési jogkivonatot, hogy a felhasználó ismét bejelentkezik. |
Az alábbi táblázat a hitelesítési forgatókönyveket és a használni kívánt hitelesítési megoldást sorolja fel.
Eset | Az App Service beépített hitelesítése | Microsoft Authentication Library | Microsoft.Identity.Web |
---|---|---|---|
Gyors és egyszerű módszerre van szüksége a szervezet felhasználóinak hozzáférésének korlátozásához? | ✅ | ❌ | ❌ |
Nem lehet módosítani az alkalmazáskódot (alkalmazásmigrálási forgatókönyv)? | ✅ | ❌ | ❌ |
Az alkalmazás nyelve és kódtárai támogatják a felhasználói bejelentkezést/engedélyezést? | ❌ | ✅ | ✅ |
Még ha kódmegoldást is használhat, inkább nem használ kódtárakat? Nem akarja a karbantartási terhet? | ✅ | ❌ | ❌ |
A webalkalmazásnak növekményes hozzájárulást kell adnia? | ❌ | ✅ | ✅ |
Feltételes hozzáférésre van szüksége a webalkalmazásban? | ❌ | ❌ | ✅ |
Az alkalmazásnak úgy kell kezelnie a lejáró hozzáférési jogkivonatot, hogy a felhasználó ismét bejelentkezik (frissítési jogkivonatot használ)? | ✅ | ✅ | ✅ |
Egyéni engedélyezési logikára vagy a bejelentkezett felhasználóval kapcsolatos információkra van szüksége? | ❌ | ✅ | ✅ |
Külső vagy közösségi identitásszolgáltatók felhasználóit kell bejelentkeznie? | ✅ | ✅ | ✅ |
Rendelkezik ASP.NET Core-alkalmazással? | ✅ | ❌ | ✅ |
Egyetlenoldalas vagy statikus webalkalmazása van? | ✅ | ✅ | ✅ |
Szeretné a Visual Studio integrációját? | ❌ | ❌ | ✅ |
Egyszeri bejelentkezésre van szüksége az IDE-ben a helyi fejlesztés során? | ❌ | ❌ | ✅ |
Következő lépések
A beépített App Service-hitelesítés használatának megkezdéséhez olvassa el a következőt:
A Microsoft Authentication Library (MSAL) használatának megkezdéséhez olvassa el a következőt:
- Bejelentkezés hozzáadása a Microsofttal egy webalkalmazáshoz
- Csak a hitelesített felhasználó számára engedélyezi a webes API-k elérését
- Felhasználók bejelentkezése egyoldalas alkalmazásba (SPA)
A Microsoft.Identity.Web használatának megkezdéséhez olvassa el a következőt:
- Felhasználók bejelentkezése webalkalmazásba
- Webes API védelme
- Felhasználók bejelentkezése Blazor Server-alkalmazásba
További információ az App Service beépített hitelesítéséről és engedélyezéséről