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.

Język/
Platforma
Przykłady kodu
w witrynie GitHub
Auth
biblioteki
Przepływ uwierzytelniania
Angular Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wywoływanie internetowego interfejsu API platformy ASP.NET Core
Wywoływanie internetowego interfejsu API platformy ASP.NET Core (B2C)
Wywoływanie programu Microsoft Graph za pośrednictwem OBO
Używanie ról aplikacji do kontroli dostępu
Używanie grup zabezpieczeń do kontroli dostępu
Wdrażanie w usługach Azure Storage i App Service
MSAL Angular • Kod autoryzacji za pomocą PKCE
• On-behalf-of (OBO)
• Ocena ciągłego dostępu (CAE)
Zestaw WebAssembly Blazor Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wdrażanie w usłudze aplikacja systemu Azure
MSAL.js Przepływ niejawny
JavaScript Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wywoływanie internetowego interfejsu API Node.js
Wywoływanie internetowego interfejsu API Node.js (B2C)
Wdrażanie w usługach Azure Storage i App Service
MSAL.js • Kod autoryzacji za pomocą PKCE
React Logowanie użytkowników
Logowanie użytkowników (B2C)
Logowanie użytkowników w aplikacjach po stronie serwera i klienta
Wywoływanie programu Microsoft Graph
Wywoływanie interfejsu API REST platformy Azure i usługi Azure Storage
Wywoływanie internetowego interfejsu API Node.js
Wywoływanie internetowego interfejsu API Node.js (B2C)
Wywoływanie programu Microsoft Graph za pośrednictwem OBO
Używanie ról aplikacji do kontroli dostępu
Używanie grup zabezpieczeń do kontroli dostępu
Wdrażanie w usłudze Azure Static Web Apps
Używanie uwierzytelniania krokowego do wywoływania internetowego interfejsu API Node.js
MSAL React • Kod autoryzacji za pomocą PKCE
• On-behalf-of (OBO)
• Dostęp warunkowy
• Kontekst uwierzytelniania dostępu warunkowego (acrs)
• Ocena ciągłego dostępu (CAE)

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.

Język/
Platforma
Przykłady kodu
w witrynie GitHub
Auth
biblioteki
Przepływ uwierzytelniania
ASP.NET Core seria ASP.NET Core
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Dostosowywanie pamięci podręcznej tokenów
Wywołaj graf (wielodostępny)
Wywoływanie interfejsów API REST platformy Azure
Ochrona internetowego interfejsu API
Ochrona internetowego interfejsu API (B2C)
Ochrona wielodostępnych internetowych interfejsów API
Używanie ról aplikacji do kontroli dostępu
Używanie grup zabezpieczeń do kontroli dostępu
Wdrażanie w usługach Azure Storage i App Service
Microsoft.Identity.Web • OpenID connect
• Kod autoryzacji
• W imieniu
Blazor Seria serwerów Blazor
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wywoływanie internetowego interfejsu API
Wywoływanie internetowego interfejsu API (B2C)
MSAL.NET Przepływ hybrydowy
ASP.NET Core Scenariusze zaawansowanej pamięci podręcznej tokenów Microsoft.Identity.Web On-Behalf-Of (OBO)
ASP.NET Core Używanie kontekstu uwierzytelniania dostępu warunkowego do przeprowadzania uwierzytelniania krokowego Microsoft.Identity.Web Kod autoryzacji
ASP.NET Core Migracja usług Active Directory Federation Services do firmy Microsoft MSAL.NET •SAML
• OpenID connect
ASP.NET Przykład trenowania programu Microsoft Graph
Logowanie użytkowników i wywoływanie programu Microsoft Graph
Logowanie użytkowników i wywoływanie programu Microsoft Graph przy użyciu ograniczonego zakresu administratora
Szybki start: logowanie użytkowników
MSAL.NET • OpenID connect
• Kod autoryzacji
Java

Spring
Seria startowa Microsoft Entra Spring Boot
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Używanie ról aplikacji do kontroli dostępu
Używanie grup do kontroli dostępu
Wdrażanie w usłudze aplikacja systemu Azure
Ochrona internetowego interfejsu API
MSAL Java
• Microsoft Entra ID Boot Starter
Kod autoryzacji
Java

Servlets
Seria serwletów bez sprężyny
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Używanie ról aplikacji do kontroli dostępu
Używanie grup zabezpieczeń do kontroli dostępu
Wdrażanie w usłudze aplikacja systemu Azure
MSAL Java Kod autoryzacji
Node.js

Express
Seria aplikacji internetowych Express
Szybki start: logowanie użytkowników
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wywoływanie programu Microsoft Graph za pośrednictwem serwera proxy BFF
Wdrażanie w usłudze aplikacja systemu Azure
Używanie ról aplikacji do kontroli dostępu
Używanie grup zabezpieczeń do kontroli dostępu
Węzeł BIBLIOTEKI MSAL • Kod autoryzacji
• Serwer proxy zaplecza dla frontonu (BFF)
Python

Flask
Seria flask
Logowanie użytkowników
Logowanie użytkowników (B2C)
Szablon do logowania użytkowników usługi Microsoft Entra ID lub B2C oraz opcjonalnie wywoływanie interfejsu API podrzędnego (Microsoft Graph)
Wywoływanie programu Microsoft Graph
Wdrażanie w usłudze aplikacja systemu Azure
MSAL Python Kod autoryzacji
Python

Django
Seria Django
Logowanie użytkowników
Logowanie użytkowników (B2C)
Wywoływanie programu Microsoft Graph
Wdrażanie w usłudze aplikacja systemu Azure
MSAL Python Kod autoryzacji
Ruby Trenowanie grafu
Logowanie użytkowników i wywoływanie programu Microsoft Graph
OmniAuth OAuth2 Kod autoryzacji

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).

Język/
Platforma
Przykłady kodu
w witrynie GitHub
Auth
biblioteki
Przepływ uwierzytelniania
.NET Core Wywoływanie programu Microsoft Graph
Wywoływanie programu Microsoft Graph za pomocą pamięci podręcznej tokenów
Wywoływanie programu Microsoft Graph przy użyciu niestandardowego kodu HTML interfejsu użytkownika sieci Web
Wywoływanie programu Microsoft Graph za pomocą niestandardowej przeglądarki internetowej
Logowanie użytkowników przy użyciu przepływu kodu urządzenia
Uwierzytelnianie użytkowników za pomocą MSAL.NET w aplikacji klasycznej WinUI
MSAL.NET • Kod autoryzacji za pomocą PKCE
• Kod urządzenia
.NET Wywoływanie chronionego interfejsu API przy użyciu zintegrowanego uwierzytelniania systemu Windows MSAL.NET Zintegrowane uwierzytelnianie systemu Windows
Java Wywoływanie programu Microsoft Graph MSAL Java Zintegrowane uwierzytelnianie systemu Windows
Node.js Logowanie użytkowników Węzeł BIBLIOTEKI MSAL Kod autoryzacji za pomocą protokołu PKCE
.NET Core Wywoływanie programu Microsoft Graph przez zalogowanie użytkowników przy użyciu nazwy użytkownika/hasła MSAL.NET Poświadczenia hasła właściciela zasobu
Python Logowanie użytkowników MSAL Python Poświadczenia hasła właściciela zasobu
Platforma uniwersalna okien (UWP) Wywoływanie programu Microsoft Graph MSAL.NET Menedżer kont sieci Web
Windows Presentation Foundation (WPF) Logowanie użytkowników i wywoływanie programu Microsoft Graph MSAL.NET Kod autoryzacji za pomocą protokołu PKCE
Windows Presentation Foundation (WPF) Logowanie użytkowników i wywoływanie internetowego interfejsu API platformy ASP.NET Core
Logowanie użytkowników i wywoływanie programu Microsoft Graph
MSAL.NET Kod autoryzacji za pomocą protokołu PKCE

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).

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).

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.

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.

Następne kroki

Jeśli chcesz zagłębić się w bardziej przykładowy kod, zobacz: