przykłady kodu Platforma tożsamości Microsoft
Te przykłady kodu są tworzone i obsługiwane przez firmę Microsoft w celu zademonstrowania użycia naszych bibliotek uwierzytelniania za pomocą Platforma tożsamości Microsoft. Typowe scenariusze uwierzytelniania i autoryzacji są implementowane w kilku typach aplikacji, językach programowania i strukturach.
- Logowanie użytkowników do aplikacji internetowych i zapewnianie autoryzowanego dostępu do chronionych internetowych interfejsów API.
- Ochrona internetowego interfejsu API przez wymaganie tokenu dostępu do wykonywania operacji interfejsu API.
Każdy przykładowy kod zawiera plik README.md opisujący sposób kompilowania projektu (jeśli dotyczy) i uruchamiania przykładowej aplikacji. Komentarze w kodzie pomagają zrozumieć, jak te biblioteki są używane w aplikacji do przeprowadzania uwierzytelniania i autoryzacji przy użyciu platformy tożsamości.
Przykłady i przewodniki
Użyj kart, aby posortować przykłady według typu aplikacji lub preferowanego języka/platformy.
Aplikacje jednostronicowe
Te przykłady pokazują, jak napisać jednostronicową aplikację zabezpieczoną przy użyciu Platforma tożsamości Microsoft. Te przykłady używają jednej z odmian MSAL.js.
Aplikacje sieci Web
Poniższe przykłady ilustrują aplikacje internetowe, które logują użytkowników. Niektóre przykłady pokazują również aplikację wywołującą program Microsoft Graph lub własny internetowy interfejs API z tożsamością użytkownika.
Internetowy interfejs API
W poniższych przykładach pokazano, jak chronić internetowy interfejs API za pomocą Platforma tożsamości Microsoft oraz jak wywoływać podrzędny interfejs API z internetowego interfejsu API.
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
ASP.NET | Wywoływanie programu Microsoft Graph | MSAL.NET | On-Behalf-Of (OBO) |
ASP.NET Core | Logowanie użytkowników i wywoływanie programu Microsoft Graph | MSAL.NET | On-Behalf-Of (OBO) |
Java | Logowanie użytkowników | MSAL Java | On-Behalf-Of (OBO) |
Node.js | • Ochrona internetowego interfejsu API Node.js • Ochrona internetowego interfejsu API Node.js za pomocą usługi Azure AD B2C |
Węzeł BIBLIOTEKI MSAL | Nośny autoryzacji |
Klasyczna
W poniższych przykładach pokazano publiczne aplikacje klasyczne klienckie, które uzyskują dostęp do interfejsu API programu Microsoft Graph lub własnego internetowego interfejsu API w nazwie użytkownika. Oprócz przykładu Desktop (Console) z programem Web Authentication Manager (WAM) wszystkie te aplikacje klienckie korzystają z biblioteki Microsoft Authentication Library (MSAL).
Urządzenie mobilne
W poniższych przykładach pokazano publiczne aplikacje mobilne klienckie, które uzyskują dostęp do interfejsu API programu Microsoft Graph. Te aplikacje klienckie używają biblioteki Microsoft Authentication Library (MSAL).
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
.NET Core | • Wywoływanie programu Microsoft Graph przy użyciu interfejsu MAUI • Wywoływanie programu Microsoft Graph przy użyciu interfejsu MAUI z brokerem • Wywoływanie dzierżawy usługi Active Directory B2C przy użyciu interfejsu MAUI |
MSAL.NET | Kod autoryzacji za pomocą protokołu PKCE |
iOS | • Wywoływanie natywnej aplikacji Microsoft Graph | MSAL iOS | Kod autoryzacji za pomocą protokołu PKCE |
Java | Logowanie użytkowników i wywoływanie programu Microsoft Graph | MSAL Android | Kod autoryzacji za pomocą protokołu PKCE |
Kotlin | Logowanie użytkowników i wywoływanie programu Microsoft Graph | MSAL Android | Kod autoryzacji za pomocą protokołu PKCE |
Xamarin | • Logowanie użytkowników i wywoływanie programu Microsoft Graph • Logowanie użytkowników za pomocą brokera i wywoływanie programu Microsoft Graph |
MSAL.NET | Kod autoryzacji za pomocą protokołu PKCE |
Usługa/demon
W poniższych przykładach pokazano aplikację, która uzyskuje dostęp do interfejsu API programu Microsoft Graph przy użyciu własnej tożsamości (bez użytkownika).
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
.NET Core | • Wywoływanie programu Microsoft Graph • Wywoływanie internetowego interfejsu API • Korzystanie z tożsamości zarządzanej i usługi Azure Key Vault |
MSAL.NET | Udzielanie poświadczeń klienta |
ASP.NET | Wiele dzierżaw z punktem końcowym Platforma tożsamości Microsoft | MSAL.NET | Udzielanie poświadczeń klienta |
Java | • Wywoływanie programu Microsoft Graph za pomocą wpisu tajnego • Wywoływanie programu Microsoft Graph za pomocą certyfikatu |
MSAL Java | Udzielanie poświadczeń klienta |
Node.js | Wywoływanie programu Microsoft Graph za pomocą wpisu tajnego | Węzeł BIBLIOTEKI MSAL | Udzielanie poświadczeń klienta |
Python | • Wywoływanie programu Microsoft Graph za pomocą wpisu tajnego • Wywoływanie programu Microsoft Graph przy użyciu certyfikatu |
MSAL Python | Udzielanie poświadczeń klienta |
Usługa Azure Functions jako internetowe interfejsy API
W poniższych przykładach pokazano, jak chronić funkcję platformy Azure przy użyciu narzędzia HttpTrigger i uwidaczniać internetowy interfejs API za pomocą Platforma tożsamości Microsoft oraz jak wywoływać podrzędny interfejs API z internetowego interfejsu API.
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
.NET | Internetowy interfejs API funkcji platformy .NET platformy Azure zabezpieczony przez identyfikator entra firmy Microsoft | MSAL.NET | Kod autoryzacji |
Python | Internetowy interfejs API funkcji platformy Azure w języku Python zabezpieczony przez identyfikator entra firmy Microsoft | MSAL Python | Kod autoryzacji |
Bez przeglądarki (bezgłówkowy)
Poniższy przykład przedstawia publiczną aplikację kliencką działającą na urządzeniu bez przeglądarki internetowej. Aplikacja może być narzędziem wiersza polecenia, aplikacją działającą w systemie Linux lub Mac albo aplikacją IoT. Przykładowe funkcje aplikacji, która uzyskuje dostęp do interfejsu API programu Microsoft Graph, w nazwie użytkownika, który loguje się interaktywnie na innym urządzeniu (takim jak telefon komórkowy). Ta aplikacja kliencka używa biblioteki Microsoft Authentication Library (MSAL).
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
.NET Core | Wywoływanie chronionego interfejsu API z urządzenia tylko do tekstu | MSAL.NET | Kod urządzenia |
Java | Logowanie użytkowników i wywoływanie chronionego interfejsu API z urządzenia tylko do tekstu | MSAL Java | Kod urządzenia |
Python | Wywoływanie programu Microsoft Graph | MSAL Python | Kod urządzenia |
Aplikacje microsoft Teams
Poniższy przykład ilustruje aplikację kart Microsoft Teams, która loguje użytkowników. Ponadto przedstawiono sposób wywoływania interfejsu API programu Microsoft Graph przy użyciu tożsamości użytkownika przy użyciu biblioteki Microsoft Authentication Library (MSAL).
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
Node.js | Aplikacja karty teams: logowanie jednokrotne i wywoływanie programu Microsoft Graph | Węzeł BIBLIOTEKI MSAL | On-Behalf-Of (OBO) |
Wielodostępne oprogramowanie SaaS
W poniższych przykładach pokazano, jak skonfigurować aplikację tak, aby akceptowała logowania z dowolnej dzierżawy firmy Microsoft Entra. Skonfigurowanie aplikacji jako wielodostępnej oznacza, że możesz zaoferować aplikację oprogramowania jako usługi (SaaS) wielu organizacjom, umożliwiając użytkownikom logowanie się do aplikacji po udzieleniu zgody.
Język/ Platforma |
Przykłady kodu w witrynie GitHub |
Auth biblioteki |
Przepływ uwierzytelniania |
---|---|---|---|
ASP.NET Core | aplikacja internetowa ASP.NET Core MVC wywołuje interfejs API programu Microsoft Graph | MSAL.NET | OpenID Connect |
ASP.NET Core | ASP.NET Core MVC web application wywołuje interfejs API sieci Web ASP.NET Core | MSAL.NET | Kod autoryzacji |
Angular | Jednostronicowe wywołania aplikacji angular ASP.NET Core internetowego interfejsu API | MSAL Angular | Kod autoryzacji |
Następne kroki
Jeśli chcesz zagłębić się w bardziej przykładowy kod, zobacz: