Udostępnij za pośrednictwem


Uwierzytelnianie natywne w usłudze Microsoft Entra External ID

Dotyczy: Biały okrąg z szarym symbolem X. Najemcy Workforce Zielony okrąg z białym znacznikiem wyboru. Najemcy zewnętrzni (Dowiedz się więcej)

Natywne uwierzytelnianie firmy Microsoft Entra umożliwia pełną kontrolę nad projektowaniem środowiska logowania do aplikacji mobilnych i klasycznych. W przeciwieństwie do rozwiązań opartych na przeglądarce, uwierzytelnianie natywne umożliwia tworzenie atrakcyjnych wizualnie ekranów uwierzytelniania, które bezproblemowo łączą się z interfejsem aplikacji. Dzięki temu podejściu można w pełni dostosować interfejs użytkownika, w tym elementy projektowe, umieszczanie logo i układ, zapewniając spójny i markowy wygląd.

Standardowy proces logowania aplikacji, który opiera się na uwierzytelnianiu delegowanym przez przeglądarkę, często powoduje zakłócenie procesu uwierzytelniania. Użytkownicy są tymczasowo przekierowywani do przeglądarki systemowej w celu uwierzytelnienia, a następnie wracają do aplikacji po zakończeniu logowania.

Chociaż uwierzytelnianie delegowane przez przeglądarkę oferuje korzyści, takie jak ograniczone wektory ataków i obsługa logowania jednokrotnego, oferuje ograniczone opcje dostosowywania interfejsu użytkownika.

Dostępne metody uwierzytelniania

Obecnie uwierzytelnianie natywne obsługuje dostawcę tożsamości dla konta lokalnego przy użyciu dwóch metod uwierzytelniania:

  • Wiadomość e-mail z logowaniem za pomocą jednorazowego hasła dostępu (OTP).
  • Logowanie za pomocą poczty e-mail i hasła z obsługą samoobsługowego resetowania hasła (SSPR).

Uwierzytelnianie natywne nie obsługuje jeszcze federacyjnych dostawców tożsamości, takich jak tożsamości społecznościowe lub tożsamości przedsiębiorstwa.

Kiedy należy używać uwierzytelniania natywnego

Jeśli chodzi o implementację uwierzytelniania dla aplikacji mobilnych i komputerowych w ramach zewnętrznego identyfikatora, dostępne są dwie opcje:

  • Uwierzytelnianie delegowane przez przeglądarkę, hostowane przez Microsoft.
  • Całkowicie dostosowane do potrzeb natywne uwierzytelnianie oparte na zestawie SDK.

Wybrane podejście zależy od konkretnych wymagań aplikacji. Chociaż każda aplikacja ma unikatowe potrzeby uwierzytelniania, należy pamiętać o kilku typowych zagadnieniach. Niezależnie od tego, czy wybierasz uwierzytelnianie natywne, czy uwierzytelnianie delegowane przez przeglądarkę, identyfikator zewnętrzny firmy Microsoft obsługuje oba te elementy.

W poniższej tabeli porównaliśmy dwie metody uwierzytelniania, które pomogą Ci zdecydować, czy wybrać odpowiednią opcję dla aplikacji.

Uwierzytelnianie delegowane przez przeglądarkę Uwierzytelnianie natywne
środowisko uwierzytelniania użytkownika Użytkownicy są kierowani do przeglądarki systemowej lub przeglądarki osadzonej w celu uwierzytelnienia i są przekierowywani z powrotem do aplikacji po zakończeniu logowania. Ta metoda jest zalecana, jeśli przekierowanie nie ma negatywnego wpływu na środowisko użytkownika końcowego. Użytkownicy mają bogaty, natywny proces rejestrowania się i logowania bez potrzeby opuszczania aplikacji.
Doświadczenie dostosowywania Opcje zarządzanego znakowania i dostosowywania są dostępne jako funkcja wbudowana. To podejście skoncentrowane na interfejsie API oferuje wysoki poziom dostosowywania, zapewniając dużą elastyczność projektowania i możliwość tworzenia dostosowanych interakcji i przepływów.
Zastosowalność Odpowiednie do zarządzania pracą, aplikacjami B2B i B2C, można jej używać w aplikacjach natywnych, aplikacjach jednostronicowych i aplikacjach internetowych. W przypadku aplikacji klienta pierwszej strony, gdy ta sama jednostka obsługuje serwer autoryzacji i aplikację, a użytkownik postrzega je jako tę samą jednostkę.
Wysiłek wejścia na żywo Niski. Użyj go prosto z pudełka. Wysoki. Deweloper tworzy, jest właścicielem i utrzymuje środowisko uwierzytelniania.
Nakład pracy na konserwację Niski. Wysoki. Aby móc korzystać z każdej nowej funkcji wydanej przez firmę Microsoft, należy zaktualizować SDK.
Bezpieczeństwo Najbezpieczniejsza opcja. Odpowiedzialność za zabezpieczenia jest współdzielona z deweloperami i należy przestrzegać najlepszych rozwiązań. Jest podatne na ataki phishingowe.
Obsługiwane języki i struktury
  • ASP.NET Core
  • Android (Kotlin, Java)
  • iOS/macOS (Swift, Objective-C)
  • JavaScript
  • React
  • Angular
  • Nodejs
  • Pyton
  • Jawa
  • Android (Kotlin, Java)
  • iOS/macOS (Swift, Objective-C)
W przypadku innych języków i platform możesz skorzystać z naszego natywnego interfejsu API do uwierzytelniania .

Dostępność funkcji

W poniższej tabeli przedstawiono dostępność funkcji dla uwierzytelniania delegowanego przez przeglądarkę i natywnego.

Uwierzytelnianie delegowane przez przeglądarkę Uwierzytelnianie natywne
Rejestracja i logowanie za pomocą jednorazowego kodu e-mail (OTP) ✔️ ✔️
tworzenie konta i logowanie się przy użyciu poczty e-mail i hasła ✔️ ✔️
Samoobsługowe resetowanie hasła (SSPR) ✔️ ✔️
Niestandardowy dostawca roszczeń ✔️ ✔️
Logowanie dostawcy tożsamości społecznych ✔️
uwierzytelnianie wieloskładnikowe z jednorazowym kodem dostępu poczty e-mail (OTP) ✔️
uwierzytelnianie wieloskładnikowe przy użyciu SMS ✔️
logowania jednokrotnego (SSO) ✔️

Jak włączyć uwierzytelnianie natywne

Najpierw zapoznaj się z powyższymi wytycznymi dotyczącymi , kiedy należy używać uwierzytelniania natywnego. Następnie należy przeprowadzić wewnętrzną dyskusję z właścicielem, projektantem i zespołem deweloperów aplikacji w celu ustalenia, czy konieczne jest uwierzytelnianie natywne.

Jeśli Twój zespół ustalił, że dla aplikacji niezbędne jest uwierzytelnianie natywne, wykonaj następujące kroki, aby włączyć uwierzytelnianie natywne w centrum administracyjnym firmy Microsoft Entra:

  1. Zaloguj się do centrum administracyjnego Microsoft Entra.
  2. Przejdź do Aplikacje>Rejestracja aplikacji i wybierz swoją aplikację.
  3. Przejdź do Uwierzytelnianie i wybierz kartę Ustawienia.
  4. Wybierz pole Zezwalaj na uwierzytelnianie natywne i pole Zezwalaj na przepływ klienta publicznego.

Po włączeniu obu Zezwalaj na uwierzytelnianie natywne i Zezwalaj na przepływ klienta publicznegozaktualizuj odpowiednio kod konfiguracji.

Aktualizowanie kodu konfiguracji

Po włączeniu natywnych interfejsów API uwierzytelniania w centrum administracyjnym nadal trzeba zaktualizować kod konfiguracji aplikacji w celu obsługi natywnych przepływów uwierzytelniania dla systemu Android lub iOS/macOS. W tym celu należy dodać pole typu wyzwania do konfiguracji. Typy wyzwań to lista wartości używanych przez aplikację do powiadamiania firmy Microsoft Entra o obsługiwanej przez nią metodzie uwierzytelniania. Więcej informacji na temat natywnych typów wyzwań uwierzytelniania można znaleźć tutaj. Jeśli konfiguracja nie zostanie zaktualizowana w celu zintegrowania składników uwierzytelniania natywnego, zestawy SDK i interfejsy API uwierzytelniania natywnego nie będą używane.

Ryzyko włączenia uwierzytelniania natywnego

Natywne uwierzytelnianie firmy Microsoft Entra nie obsługuje logowania jednokrotnego (SSO), a odpowiedzialność za zapewnienie bezpieczeństwa aplikacji leży w zespole deweloperów.

Jak używać uwierzytelniania natywnego

Aplikacje korzystające z uwierzytelniania natywnego można tworzyć przy użyciu naszych natywnych interfejsów API uwierzytelniania lub zestawu MICROSOFT Authentication Library (MSAL) SDK dla systemów Android i iOS/macOS. Jeśli to możliwe, zalecamy dodanie uwierzytelniania natywnego do aplikacji przy użyciu biblioteki MSAL.

Aby uzyskać więcej informacji na temat przykładów i samouczków dotyczących uwierzytelniania natywnego, zobacz poniższą tabelę.

Język/
Platforma
Przykładowy przewodnik po kodzie Przewodnik dotyczący kompilowania i integrowania
Android (Kotlin) logowanie użytkowników Loguj użytkowników
iOS (Swift) Zaloguj użytkowników Zaloguj użytkowników
macOS (Swift) logowanie użytkowników logowanie użytkowników

Jeśli planujesz utworzyć aplikację w strukturze, która nie jest obecnie obsługiwana przez bibliotekę MSAL, możesz użyć naszego interfejsu API uwierzytelniania. Aby uzyskać więcej informacji, zobacz ten artykuł referencyjny interfejsu API.