Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Microsoft Entra ID to oparta na chmurze usługa zarządzania tożsamościami i dostępem, która umożliwia pracownikom dostęp do zasobów. Analitycy branżowi konsekwentnie uznają identyfikator Microsoft Entra ID za lidera. Jest to siedmiokrotny lider w Gartner Magic Quadrant dla zarządzania dostępem. KuppingerCole ocenia identyfikator Entra firmy Microsoft jako pozytywny we wszystkich wymiarach w zarządzaniu dostępem. Frost & Sullivan nazwał firmę Microsoft 2022 Company of the Year dla globalnej branży zarządzania tożsamościami i dostępem. Przeczytaj historie dotyczące ponad 300 000 organizacji korzystających z identyfikatora Microsoft Entra.
Ten artykuł jest pierwszym z serii na temat tego, jak niezależni deweloperzy oprogramowania (ISV) mogą tworzyć i optymalizować aplikacje dla identyfikatora Entra firmy Microsoft. W tej serii możesz dowiedzieć się więcej o następujących tematach:
- Tworzenie aplikacji w ekosystemie Microsoft Entra ID opisuje, jak używać centrum administracyjnego Microsoft Entra lub Microsoft Graph API do rejestrowania aplikacji w kliencie Microsoft Entra.
- Uwierzytelnianie aplikacji i użytkowników opisuje sposób używania identyfikatora Entra firmy Microsoft do uwierzytelniania użytkowników i aplikacji.
- Autoryzowanie aplikacji, zasobów i obciążeń ilustruje autoryzację, gdy człowiek wchodzi w interakcję z aplikacją i kieruje nią. W tym scenariuszu interfejsy API reprezentują użytkownika, oraz gdy aplikacje lub usługi działają niezależnie.
- Dostosowywanie tokenów ułatwia tworzenie zabezpieczeń w aplikacjach przy użyciu tokenów identyfikatorów i tokenów dostępu z identyfikatora Entra firmy Microsoft. W tym artykule opisano informacje, które można otrzymywać w tokenach identyfikatorów Entra firmy Microsoft oraz sposób ich dostosowywania.
Programowanie przy użyciu Platforma tożsamości Microsoft
Aplikacje są podstawowe dla identyfikatora Entra firmy Microsoft. Gdy użytkownik uzyskuje dostęp do zasobu, uzyskuje dostęp do tego zasobu za pomocą aplikacji. Platforma tożsamości Microsoft obejmuje narzędzia i usługi, które umożliwiają deweloperom tworzenie identyfikatora Entra firmy Microsoft. Platforma tożsamości Microsoft rozpoczyna się od identyfikatora Entra firmy Microsoft, usługi w chmurze, która udostępnia operacje, takie jak logowanie, wylogowywanie i rejestracja aplikacji wymagana przez aplikację. Platforma tożsamości Microsoft zawiera biblioteki Microsoft Authentication Libraries (MSAL) typu open source w różnych językach i strukturach oraz w programie Microsoft Graph, które udostępniają interfejsy API umożliwiające dostęp do danych i operacji w usłudze Microsoft Entra ID.
W przypadku deweloperów Platforma tożsamości Microsoft zawiera następujące funkcje.
- Uwierzytelnianie użytkownika, autoryzacja aplikacji, generowanie tokenów interfejsu API.
- Uproszczenie integracji funkcji zabezpieczeń bezpośrednio z biblioteką Microsoft Authentication Library (MSAL) lub za pośrednictwem interfejsu API wyższego poziomu, takiego jak Microsoft.Identity.Web lub Azure.Identity.
- Zamiast implementować protokół OAuth 2.0 od podstaw, skorzystaj z MSAL, aby usunąć złożoność dzięki niezawodnym interfejsom API, które zmniejszają wysiłek dewelopera.
- Upewnij się, że aplikacje stosują najlepsze rozwiązania dotyczące zabezpieczeń zgodnie ze standardami branżowymi i protokołami, takimi jak OAuth 2.0.
- Ujednolicaj historie uwierzytelniania w aplikacjach i doświadczeniach z obsługą logowania jednokrotnego (SSO).
- Usprawnij integrację tożsamości społecznościowych z identyfikatorem zewnętrznym firmy Microsoft.
- Zabezpiecz dane i zasoby przy minimalnym kodzie integracyjnym i natywnej obsłudze funkcji Microsoft Entra ID, takich jak dostęp warunkowy (CA), ciągła ocena dostępu (CAE), Ochrona Microsoft Entra ID i zarządzanie urządzeniami.
- Twórz aplikacje, które bezpiecznie chronią tokeny uwierzytelniania przy jednoczesnym zapewnieniu wymuszania zgodności urządzeń i zasad. Polegaj na obsłudze uwierzytelniania za pomocą nowoczesnych brokerów, takich jak Microsoft Authenticator lub wbudowane składniki systemu operacyjnego, takie jak Menedżer kont sieci Web (WAM) w systemie Windows.
Integracja aplikacji z Microsoft Entra ID
Aplikacje integrujące się z tożsamościami użytkowników, usług lub grup Microsoft Entra ID współdziałają z dzierżawą Microsoft Entra ID. Dzierżawca to dedykowana instancja Microsoft Entra ID, która zazwyczaj reprezentuje organizację lub grupę w ramach większej firmy. "Dzierżawa (tenant) przechowuje katalog organizacji, przechowując takie obiekty jak konta służbowe, szkolne lub konta zaproszonych partnerów." Przechowywane są również grupy, aplikacje, urządzenia i inne obiekty. Dzierżawa udostępnia internetowe punkty końcowe używane przez aplikacje do wykonywania operacji, takich jak uwierzytelnianie.
Aplikacja wysyła żądania do punktu końcowego dzierżawy, aby uzyskać tokeny identyfikujące użytkowników lub API zasobów, które można wykorzystać do autoryzacji dostępu do zasobów. Tożsamości aplikacji w ramach Microsoft Entra ID umożliwiają aplikacjom żądanie tokenów z dzierżawy Microsoft Entra ID, jednocześnie zapewniając użytkownikom odpowiedni kontekst dotyczący tego, kto próbuje ich uwierzytelnić.
Chociaż większość przedsiębiorstw wymaga tylko jednej dzierżawy Microsoft Entra ID, w niektórych sytuacjach może być wymagane posiadanie wielu dzierżaw dla realizacji celów biznesowych. Duże przedsiębiorstwo może zawierać wiele niezależnych jednostek biznesowych, które mogą wymagać koordynacji i współpracy w całym przedsiębiorstwie. Miasta w regionie lub szkołach w okręgu mogą mieć podobne wymagania. W tych scenariuszach każda jednostka może mieć własnego najemcę z odrębną konfiguracją i polityką. Ze względu na to, że usługa Microsoft Entra ID w chmurze hostuje dzierżawy, organizacje mogą skonfigurować współpracę między dzierżawami z minimalnymi przeszkodami.
Identyfikator Entra firmy Microsoft obsługuje następujące elementy wśród szerokiej gamy protokołów.
- Protokół OAuth 2.0 jest standardem branżowym autoryzacji. Aplikacje żądają tokenu dostępu przy użyciu protokołu OAuth 2.0, aby uzyskać autoryzację dla aplikacji w celu uzyskania dostępu do chronionego zasobu.
- OpenID Connect (OIDC) to interoperowalny standard uwierzytelniania oparty na standardzie OAuth 2.0. Aplikacje żądają tokenu identyfikatora przy użyciu protokołu OIDC w celu uwierzytelnienia bieżącego użytkownika.
- Security Assertion Markup Language (SAML) 2.0 to standard uwierzytelniania. Aplikacje żądają asercji SAML, nazywanej również tokenem SAML, z identyfikatora Entra firmy Microsoft w celu wymiany danych uwierzytelniania i autoryzacji między aplikacją a identyfikatorem Entra firmy Microsoft. Aplikacje używają protokołu SAML do uwierzytelniania bieżącego użytkownika.
- System zarządzania tożsamościami między domenami (SCIM) nie jest przeznaczony do uwierzytelniania i autoryzacji. SCIM to protokół aprowizacji, który automatyzuje synchronizację informacji o użytkownikach i grupach między identyfikatorem Entra firmy Microsoft i łączeniem aplikacji. Synchronizacja konfiguruje użytkowników i grupy dla aplikacji.
Podstawowe operacje wykonywane przez aplikacje za pomocą identyfikatora Entra firmy Microsoft są żądaniami i przetwarzaniem tokenów. W przeszłości posiadanie użytkownika identyfikującego się z nazwą użytkownika i hasłem było często wystarczające dla dostawcy tożsamości, takiego jak Microsoft Entra ID, aby wydać token do aplikacji. Ten token odpowiedział na pytanie "Kim jest użytkownik i do czego może uzyskać dostęp aplikacja?" Obecnie bardziej bezpieczne podejście do weryfikowania kont tożsamości pod kątem większej liczby sygnałów jest następujące:
- Kto jest użytkownikiem?
- Do czego może uzyskać dostęp aplikacja?
- Z jakiego urządzenia?
- Jak silne są poświadczenia?
- Z jakich lokalizacji sieciowych?
Klienci microsoft Entra ID mogą używać funkcji, takich jak dostęp warunkowy, aby określić, które pytania lub warunki mają zostać ocenione w celu zapewnienia bezpiecznego dostępu do zasobów.
Deweloperzy, którzy tworzą aplikacje wymagające obsługi tożsamości użytkownika, nie muszą pisać kodu, aby uwzględnić tę złożoność w wystawianiu tokenów. Wbudowane funkcje biblioteki MSAL umożliwiają przetwarzanie żądań uwierzytelniania. Po włączeniu dostępu warunkowego, gdy aplikacja żąda tokenu, identyfikator Entra firmy Microsoft zapewnia wymuszanie zasad. Weryfikuje żądania dotyczące zasad, takich jak lokalizacja użytkownika (na przykład czy znajdują się w sieci firmowej), czy ocenia sygnały ryzyka dla użytkownika. Ocena ryzyka związanego z użytkownikiem może wymagać większej interakcji użytkownika, takiej jak uwierzytelnianie wieloskładnikowe (MFA). Gdy identyfikator Entra firmy Microsoft weryfikuje zgodność z ograniczeniami zasad, wystawia token. Jeśli nie może zweryfikować zgodności, identyfikator Entra firmy Microsoft nie wystawia tokenu aplikacji i udostępnia użytkownikowi kontekst, dlaczego nie może uzyskać dostępu do zasobu.
Ponieważ zasady dostępu warunkowego są teraz bardziej zaawansowane. Istnieje szeroki zestaw sygnałów określających, czy użytkownik lub usługa powinien otrzymać token. Na przykład może być ważne określenie, czy urządzenie przenośne korzysta z zarządzania aplikacjami mobilnymi (MAM), czy usługa Intune zarządza komputerem z systemem Windows z poziomu aplikacji klasycznej. Może też być konieczne zabezpieczenie tokenów przez powiązanie ich z urządzeniem źródłowym żądania. Ta staranność pomaga zapewnić zgodność i bezpieczeństwo przy minimalnym tarciu z deweloperem. Biblioteki firmy Microsoft oferują niezbędną infrastrukturę, zachowując przy tym elastyczność w reagowaniu na określone wymagania dotyczące polityki.
Uwierzytelnianie i autoryzacja przy użyciu identyfikatora entra firmy Microsoft
Identyfikator entra firmy Microsoft obsługuje przepływy uwierzytelniania i autoryzacji w przeglądarkach w celu zabezpieczenia zasobów internetowych (takich jak witryny internetowe i interfejsy API) oraz na platformach klienckich, takich jak Windows, macOS, Linux, iOS i Android. Dostawcy technologii w całym ekosystemie współpracują z firmą Microsoft, aby upewnić się, że klienci, ich organizacje i partnerzy mają bezproblemowe środowiska obsługi poświadczeń. Przeglądarka Microsoft Edge współpracuje bezpośrednio z Microsoft Entra ID, aby obsługiwać logowanie jednokrotne na poziomie urządzenia, umożliwiając uwierzytelnianie użytkowników na urządzeniach z systemem Windows. Google Chrome (wersja 111) i Firefox (wersja 91) mają tę funkcję. Aplikacje internetowe korzystające z tożsamości microsoft Entra ID automatycznie używają tych funkcji w aplikacjach opartych na przeglądarce, aby zapewnić bezproblemowe środowisko logowania dla klientów.
Aby umożliwić aplikacjom natywnym zapewnienie tego ujednoliconego środowiska logowania jednokrotnego, firma Microsoft Entra wprowadziła brokery uwierzytelniania, aplikacje uruchamiane na urządzeniu użytkownika w celu zarządzania procesami uwierzytelniania i obsługi tokenów dla połączonych kont. W poniższej tabeli wymieniono brokerów uwierzytelniania dla typowych systemów operacyjnych.
| System operacyjny | Broker uwierzytelniania |
|---|---|
| iOS | Aplikacja Microsoft Authenticator |
| Android | Aplikacja Microsoft Authenticator lub aplikacja Intune — Portal firmy |
| Windows | Wbudowany składnik systemu operacyjnego Menedżera kont sieci Web dostępny w systemie Windows 10, Windows Server 2019 lub nowszym, Windows 11 |
Dzięki brokerom uwierzytelniania deweloperzy aplikacji natywnych mogą korzystać z nowych funkcji identyfikatora Entra firmy Microsoft, takich jak zasady dostępu warunkowego opartego na urządzeniach, bez konieczności ponownego zapisywania kodu, ponieważ nowe funkcje stają się dostępne w chmurze. Aplikacje, które nie korzystają z brokera uwierzytelniania, mogą być mniej popularne wśród klientów Microsoft Entra ID, którzy wymagają tych funkcji.
Delegowanie zarządzania tożsamościami i dostępem do Microsoft Entra ID
Aplikacje, które delegują zarządzanie tożsamościami i dostępem do identyfikatora Entra firmy Microsoft, można tworzyć przy użyciu dowolnego narzędzia dewelopera, biblioteki lub struktury implementującego protokół OAuth 2.0, OIDC lub SAML z wcześniej omówionymi zastrzeżeniami. Wiele implementacji OIDC z certyfikatem OpenID dla co najmniej jednego profilu certyfikacji, w tym profilów uwierzytelniania, wymaga minimalnej dodatkowej konfiguracji do pracy z identyfikatorem Entra firmy Microsoft. Aby ułatwić rozwój dla platformy Microsoft Entra ID, kilka zoptymalizowanych bibliotek współpracuje z usługami i możliwościami Microsoftu.
- Podczas tworzenia aplikacji internetowych, interfejsów API lub innych obciążeń (takich jak demony lub usługi na platformie ASP.NET Core lub ASP.NET), użyj narzędzia Microsoft Identity Web.
- W przypadku kompilacji na platformie Microsoft Azure użyj zestawów SDK platformy Azure, które zawierają biblioteki klienta tożsamości platformy Azure.
- Jeśli nie możesz użyć jednej z tych bibliotek, użyj biblioteki MSAL dla środowiska deweloperskiego, jak pokazano w poniższej tabeli.
| Biblioteka | Obsługiwane platformy i struktury |
|---|---|
| MSAL dla Android | Android |
| MSAL dla Angular | Aplikacje jednostronicowe z platformami Angular i Angular.js |
| MSAL Objective-C | iOS, iPadOS, macOS |
| MSAL Go | Windows, macOS, Linux |
| MSAL Java | Windows, macOS, Linux |
| MSAL.js | Struktury JavaScript/TypeScript, takie jak Vue.js, Ember.js lub Durandal.js |
| MSAL.NET | .NET, .NET Framework, .NET dla Android, .NET dla tvOS |
| MSAL Node | Aplikacje internetowe z wykorzystaniem Express, aplikacje desktopowe z użyciem Electron, międzyplatformowe aplikacje konsolowe |
| MSAL Python | Windows, macOS, Linux |
| MSAL React | Aplikacje jednostronicowe z bibliotekami opartymi na React, takimi jak Next.js i Gatsby.js |
Rodzina bibliotek MSAL zapewnia podstawowe funkcje pozyskiwania i buforowania tokenów. Oparte na MSAL, Microsoft Identity Web i klientach Azure Identity, systemy upraszczają pozyskiwanie tokenów dzięki możliwościom bibliotek uwierzytelniania.
Jeśli to możliwe, zalecamy, aby niezależni dostawcy oprogramowania opierali się na bibliotece MSAL lub bibliotece opartej na MSAL. Biblioteka MSAL obsługuje uwierzytelnianie obsługiwane przez brokera, scenariusze dostępu warunkowego, ochronę tokenów, zasady ochrony aplikacji usługi Microsoft Intune i zarządzanie aplikacjami mobilnymi, ocenę dostępu ciągłego i nie tylko.
Na wszystkich dostępnych platformach ujednolicona struktura uwierzytelniania MSAL bezproblemowo integruje się z Platforma tożsamości Microsoft w celu zapewnienia spójnego i bezpiecznego uwierzytelniania użytkowników. Ponieważ biblioteka MSAL oddziela złożoność wokół proaktywnego odnawiania, buforowania i unieważniania tokenów, deweloperzy mogą zapewnić bezpieczeństwo, solidność i niezawodność przepływów uwierzytelniania.
Uzyskiwanie dostępu do innych zasobów
Aplikacje często potrzebują więcej niż uwierzytelniania i autoryzacji (na przykład dostępu do danych katalogu dzierżawy). Dostęp może obejmować uzyskiwanie atrybutów użytkownika, grup, członków grupy, aplikacji i zarządzania.
Program Microsoft Graph zapewnia dostęp do tożsamości i dostępu dzierżawy, użytkowników, grup i aplikacji. Microsoft Graph to brama do danych i analizy na platformie Microsoft 365. Możesz użyć ujednoliconego modelu programowego, aby uzyskać dostęp do ogromnej ilości danych na platformie Microsoft 365, w systemach Windows i Enterprise Mobility + Security (EMS).
Następne kroki
- Ustalanie aplikacji w ekosystemie Microsoft Entra ID opisuje, jak używać centrum administracyjnego Microsoft Entra lub interfejsu API Microsoft Graph do rejestrowania aplikacji w dzierżawie Microsoft Entra ID.
- Uwierzytelnianie aplikacji i użytkowników opisuje sposób używania identyfikatora Entra firmy Microsoft do uwierzytelniania użytkowników i aplikacji.
- Autoryzowanie aplikacji, zasobów i obciążeń omawia autoryzację, gdy dana osoba wchodzi w interakcję z aplikacją i kieruje aplikację, gdy interfejsy API działają w imieniu użytkownika, a aplikacje lub usługi działają niezależnie.
- Dostosowywanie tokenów ułatwia tworzenie zabezpieczeń w aplikacjach przy użyciu tokenów identyfikatorów i tokenów dostępu z identyfikatora Entra firmy Microsoft. W tym artykule opisano informacje, które można otrzymywać w tokenach identyfikatorów Entra firmy Microsoft oraz sposób ich dostosowywania.