Przykłady kodu usługi Azure Active Directory (punkt końcowy w wersji 1.0)

Ostrzeżenie

Ta zawartość dotyczy starszego punktu końcowego Azure AD w wersji 1.0. Użyj Platforma tożsamości Microsoft dla nowych projektów.

Możesz użyć usługi Azure Active Directory (Azure AD), aby dodać uwierzytelnianie i autoryzację do aplikacji internetowych i internetowych interfejsów API.

Ta sekcja zawiera linki do przykładów, których można użyć, aby dowiedzieć się więcej na temat punktu końcowego Azure AD w wersji 1.0. Te przykłady pokazują, jak to zrobić wraz z fragmentami kodu, których można używać w aplikacjach. Na przykładowej stronie kodu znajdziesz szczegółowe tematy dotyczące odczytu i mnie, które ułatwiają wymagania, instalację i konfigurację. Kod jest komentowany, aby ułatwić zrozumienie krytycznych sekcji.

Uwaga

Jeśli interesuje Cię Microsoft Entra przykłady kodu w wersji 2, zobacz Przykłady kodu w wersji 2.0 według scenariusza.

Ostrzeżenie

Obsługa biblioteki Active Directory Authentication Library (ADAL) zakończy się w grudniu 2022 r. Aplikacje korzystające z biblioteki ADAL w istniejących wersjach systemu operacyjnego będą nadal działać, ale wsparcie techniczne i aktualizacje zabezpieczeń zostaną zakończone. Bez ciągłych aktualizacji zabezpieczeń aplikacje korzystające z biblioteki ADAL staną się coraz bardziej narażone na najnowsze wzorce ataków zabezpieczeń. Aby uzyskać więcej informacji, zobacz Migrowanie aplikacji do biblioteki MSAL.

Aby zrozumieć podstawowy scenariusz dla każdego przykładowego typu, zobacz Scenariusze uwierzytelniania dla Azure AD.

Możesz również współtworzyć nasze przykłady w usłudze GitHub. Aby dowiedzieć się, jak to zrobić, zobacz przykłady i dokumentację usługi Azure Active Directory.

Aplikacje jednostronicowe

W tym przykładzie pokazano, jak napisać aplikację jednostronicową zabezpieczoną przy użyciu Azure AD.

Platforma Wywołuje własny interfejs API Wywołuje inny internetowy interfejs API
Ten obraz przedstawia logo języka JavaScript javascript-singlepageapp
Ten obraz przedstawia logo Angular JS angularjs-singlepageapp angularjs-singlepageapp-cors

Aplikacje internetowe

Aplikacje internetowe logujące użytkowników, wywołując program Microsoft Graph lub internetowy interfejs API z tożsamością użytkownika

Poniższe przykłady ilustrują aplikacje internetowe podpisujące użytkowników. Niektóre z tych aplikacji wywołają również program Microsoft Graph lub własny internetowy interfejs API w nazwie zalogowanego użytkownika.

Platforma Tylko loguje użytkowników Wywołuje program Microsoft Graph Wywołuje inny interfejs API sieci Web ASP.NET lub ASP.NET Core 2.0
Ten obraz przedstawia logo ASP.NET Core

ASP.NET Core 2.0
dotnet-webapp-openidconnect-aspnetcore webapp-webapi-multitenant-openidconnect-aspnetcore

(Azure AD Graph)
dotnet-webapp-webapi-openidconnect-aspnetcore
Ten obraz przedstawia logo platformy ASP.NET

ASP.NET 4.5

webapp-WSFederation-dotNet

dotnet-webapp-webapi-oauth2-useridentity
dotnet-webapp-multitenant-openidconnect

(Azure AD Graph)
Ten obraz przedstawia logo języka Python python-webapp-graphapi
Ten obraz przedstawia dziennik języka Java java-webapp-openidconnect
Ten obraz przedstawia logo PHP php-graphapi-web

Aplikacje internetowe demonstrujące kontrolę dostępu opartą na rolach (autoryzacja)

W poniższych przykładach pokazano, jak zaimplementować kontrolę dostępu opartą na rolach (RBAC). Kontrola dostępu oparta na rolach służy do ograniczania uprawnień niektórych funkcji w aplikacji internetowej określonym użytkownikom. Użytkownicy są autoryzowani w zależności od tego, czy należą do grupy Azure AD, czy mają daną rolę aplikacji.

Platforma Sample Opis
Ten obraz przedstawia logo platformy ASP.NET

ASP.NET 4.5
dotnet-webapp-groupclaims

dotnet-webapp-roleclaims
Aplikacja internetowa MVC platformy .NET 4.5, która używa ról Azure AD do autoryzacji

Klasyczne i mobilne publiczne aplikacje klienckie wywołujące program Microsoft Graph lub internetowy interfejs API

Poniższe przykłady ilustrują publiczne aplikacje klienckie (aplikacje klasyczne/mobilne), które uzyskują dostęp do programu Microsoft Graph lub internetowego interfejsu API w nazwie użytkownika. W zależności od urządzeń i platform aplikacje mogą logować użytkowników na różne sposoby (przepływy/dotacje):

  • Interaktywnie
  • Dyskretnie (ze zintegrowanym uwierzytelnianiem systemu Windows w systemie Windows lub nazwą użytkownika/hasłem)
  • Delegowanie logowania interakcyjnego do innego urządzenia (przepływ kodu urządzenia używany na urządzeniach, które nie udostępniają kontrolek internetowych)
Aplikacja kliencka Platforma Przepływ/Udzielanie Wywołuje program Microsoft Graph Wywołuje interfejs API sieci Web ASP.NET lub ASP.NET Core 2.x
Desktop (WPF) Ten obraz przedstawia logo platformy .NET/C# Interaktywne Część elementu dotnet-native-multitarget dotnet-native-desktop

dotnet-native-aspnetcore

dotnet-webapi-manual-jwt-validation
Mobile (UWP) Ten obraz przedstawia platformę .NET/C#/UWP Interaktywne dotnet-native-uwp-wam

W tym przykładzie użyto wam, a nie ADAL.NET
dotnet-windows-store (Aplikacja platformy UWP używająca ADAL.NET do wywoływania pojedynczego interfejsu API sieci Web dzierżawy)

dotnet-webapi-multitenant-windows-store (Aplikacja platformy UWP używająca ADAL.NET do wywoływania wielodostępnego internetowego interfejsu API)
Mobile (Android, iOS, UWP) Ten obraz przedstawia platformę .NET/C# (Xamarin) Interaktywne dotnet-native-multitarget
Urządzenia przenośne (Android) Ten obraz przedstawia logo systemu Android Interaktywne android
Mobile (iOS) Na tym obrazie przedstawiono system iOS/Objective C lub Swift Interaktywne nativeClient-iOS
Pulpit (konsola) Ten obraz przedstawia logo platformy .NET/C# Nazwa użytkownika/hasło

Zintegrowane uwierzytelnianie systemu Windows
dotnet-native-headless
Pulpit (konsola) Ten obraz przedstawia logo języka Java Nazwa użytkownika/hasło java-native-headless
Pulpit (konsola) Ten obraz przedstawia logo platformy .NET Core/C# Przepływ kodu urządzenia dotnet-deviceprofile

Aplikacje demona (uzyskiwanie dostępu do internetowych interfejsów API przy użyciu tożsamości aplikacji)

W poniższych przykładach pokazano aplikacje klasyczne lub internetowe, które uzyskują dostęp do programu Microsoft Graph lub internetowego interfejsu API bez użytkownika (z tożsamością aplikacji).

Aplikacja kliencka Platforma Przepływ/Udzielanie Wywołuje internetowy interfejs API ASP.NET lub ASP.NET Core 2.0
Aplikacja demona (konsola) Ten obraz przedstawia logo .NET Framework Poświadczenia klienta z wpisem tajnym aplikacji lub certyfikatem dotnet-demon

dotnet-daemon-certificate-credential
Aplikacja demona (konsola) Ten obraz przedstawia logo platformy .NET Core Poświadczenia klienta z certyfikatem dotnetcore-daemon-certificate-credential
aplikacja internetowa ASP.NET Ten obraz przedstawia logo .NET Framework Poświadczenia klienta dotnet-webapp-webapi-oauth2-appidentity

Interfejsy API sieci Web

Internetowy interfejs API chroniony przez usługę Azure Active Directory

Poniższy przykład pokazuje, jak chronić internetowy interfejs API Node.js przy użyciu Azure AD.

W poprzednich sekcjach tego artykułu można również znaleźć inne przykłady ilustrujące aplikację kliencką wywołującą ASP.NET lub ASP.NET Core internetowy interfejs API. Te przykłady nie zostały ponownie wymienione w tej sekcji, ale znajdziesz je w ostatniej kolumnie tabel powyżej lub poniżej

Platforma Przykład
Ten obraz przedstawia logo Node.js node-webapi

Internetowy interfejs API wywołujący program Microsoft Graph lub inny internetowy interfejs API

W poniższych przykładach pokazano internetowy interfejs API, który wywołuje inny internetowy interfejs API. W drugim przykładzie pokazano, jak obsługiwać dostęp warunkowy.

Platforma Wywołuje program Microsoft Graph Wywołuje inny interfejs API sieci Web ASP.NET lub ASP.NET Core 2.0
Ten obraz przedstawia logo platformy ASP.NET

ASP.NET 4.5
dotnet-webapi-onbehalfof

dotnet-webapi-onbehalfof-ca
dotnet-webapi-onbehalfof

dotnet-webapi-onbehalfof-ca

Inne przykłady programu Microsoft Graph

Przykłady i samouczki demonstrujące różne wzorce użycia dla interfejs Graph API firmy Microsoft, w tym uwierzytelnianie za pomocą Azure AD, zobacz Przykłady społeczności programu Microsoft Graph & Samouczki.

Zobacz też