Scenariusze uwierzytelniania i zalecenia

Jeśli masz aplikację internetową lub interfejs API uruchomiony w usłudze aplikacja systemu Azure, możesz ograniczyć dostęp do niej na podstawie tożsamości użytkowników lub aplikacji, które go żądają. Usługa App Service oferuje kilka rozwiązań uwierzytelniania, które ułatwiają osiągnięcie tego celu. W tym artykule dowiesz się więcej o różnych opcjach uwierzytelniania, ich zaletach i wadach oraz o tym, które rozwiązanie uwierzytelniania ma być używane w określonych scenariuszach.

Rozwiązania do uwierzytelniania

  • wbudowane uwierzytelnianie usługi aplikacja systemu Azure — umożliwia logowanie użytkowników i uzyskiwanie dostępu do danych przez zapisanie minimalnego lub żadnego kodu w aplikacji internetowej, interfejsie API RESTful lub zapleczu dla urządzeń przenośnych. Jest ona wbudowana bezpośrednio w platformę i nie wymaga żadnego określonego języka, biblioteki, wiedzy na temat zabezpieczeń, a nawet żadnego kodu do użycia.
  • Biblioteka Microsoft Authentication Library (MSAL) — umożliwia deweloperom uzyskiwanie tokenów zabezpieczających z Platforma tożsamości Microsoft w celu uwierzytelniania użytkowników i uzyskiwania dostępu do zabezpieczonych internetowych interfejsów API. Dostępne dla wielu obsługiwanych platform i platform są to biblioteki ogólnego przeznaczenia, które mogą być używane w różnych środowiskach hostowanych. Deweloperzy mogą również integrować się z wieloma dostawcami logowania, takimi jak Microsoft Entra, Facebook, Google, Twitter.
  • Microsoft.Identity.Web — MSAL.NET opakowujące biblioteki wyższego poziomu, udostępnia zestaw abstrakcji ASP.NET Core, które upraszczają dodawanie obsługi uwierzytelniania do aplikacji internetowych i internetowych interfejsów API integrujących się z Platforma tożsamości Microsoft. Udostępnia ona warstwę wygody interfejsu API z jedną powierzchnią, która łączy się ze sobą ASP.NET Core, oprogramowanie pośredniczące uwierzytelniania i MSAL.NET. Ta biblioteka może być używana w aplikacjach w różnych środowiskach hostowanych. Możesz zintegrować z wieloma dostawcami logowania, takimi jak Microsoft Entra, Facebook, Google, Twitter.

Zalecenia dotyczące scenariuszy

W poniższej tabeli wymieniono każde rozwiązanie uwierzytelniania i kilka ważnych czynników, które należy użyć.

Metoda uwierzytelniania Kiedy używać
Wbudowane uwierzytelnianie usługi App Service * Chcesz mieć mniej kodu do posiadania i zarządzania.
* Język i zestawy SDK aplikacji nie zapewniają logowania ani autoryzacji użytkownika.
* Nie masz możliwości modyfikowania kodu aplikacji (na przykład podczas migrowania starszych aplikacji).
* Należy obsługiwać uwierzytelnianie za pośrednictwem konfiguracji, a nie kodu.
* Musisz zalogować się zewnętrznych lub społecznościowych użytkowników.
Biblioteka uwierzytelniania firmy Microsoft (MSAL) * Potrzebujesz rozwiązania kodu w jednym z kilku różnych języków
* Należy dodać niestandardową logikę autoryzacji.
* Potrzebna jest obsługa przyrostowej zgody.
* Potrzebujesz informacji o zalogowanym użytkowniku w kodzie.
* Musisz zalogować się zewnętrznych lub społecznościowych użytkowników.
* Aplikacja musi obsługiwać wygasający token dostępu bez ponownego logowania użytkownika.
Microsoft.Identity.Web * Masz aplikację ASP.NET Core.
* Potrzebna jest obsługa logowania jednokrotnego w środowisku IDE podczas programowania lokalnego.
* Należy dodać niestandardową logikę autoryzacji.
* Potrzebna jest obsługa przyrostowej zgody.
* Potrzebujesz dostępu warunkowego w aplikacji internetowej.
* Potrzebujesz informacji o zalogowanym użytkowniku w kodzie.
* Musisz zalogować się zewnętrznych lub społecznościowych użytkowników.
* Aplikacja musi obsługiwać wygasający token dostępu bez ponownego logowania użytkownika.

W poniższej tabeli wymieniono scenariusze uwierzytelniania i używane rozwiązania uwierzytelniania.

Scenariusz Wbudowane uwierzytelnianie usługi App Service Biblioteka uwierzytelniania firmy Microsoft Microsoft.Identity.Web
Potrzebujesz szybkiego i prostego sposobu ograniczenia dostępu do użytkowników w organizacji?
Nie można zmodyfikować kodu aplikacji (scenariusz migracji aplikacji)?
Język i biblioteki aplikacji obsługują logowanie/autoryzację użytkownika?
Nawet jeśli możesz użyć rozwiązania kodu, nie chcesz używać bibliotek? Nie chcesz obciążenia konserwacyjnego?
Czy aplikacja internetowa musi udzielić zgody przyrostowej?
Czy potrzebujesz dostępu warunkowego w aplikacji internetowej?
Twoja aplikacja musi obsługiwać wygasający token dostępu bez ponownego logowania użytkownika (użyj tokenu odświeżania)?
Potrzebujesz niestandardowej logiki autoryzacji lub informacji o zalogowanym użytkowniku?
Chcesz zalogować użytkowników z zewnętrznych lub społecznościowych dostawców tożsamości?
Masz aplikację ASP.NET Core?
Masz aplikację jednostronicową lub statyczną aplikację internetową?
Chcesz zintegrować program Visual Studio?
Potrzebujesz obsługi logowania jednokrotnego w środowisku IDE podczas programowania lokalnego?

Następne kroki

Aby rozpocząć uwierzytelnianie wbudowane usługi App Service, przeczytaj:

Aby rozpocząć pracę z biblioteką Microsoft Authentication Library (MSAL), przeczytaj:

Aby rozpocząć pracę z witryną Microsoft.Identity.Web, przeczytaj:

Dowiedz się więcej o wbudowanym uwierzytelnianiu i autoryzacji usługi App Service