Microsofts identitetsplattform kodexempel

Dessa kodexempel som skapats och underhålls av Microsoft demonstrerar autentisering och auktorisering med hjälp av Azure AD och Microsofts identitetsplattform i flera programtyper,utvecklingsspråk och ramverk.

  • Logga in användare på webbprogram och ge auktoriserad åtkomst till skyddade webb-API:er.
  • Skydda ett webb-API genom att kräva en åtkomsttoken för att utföra API-åtgärder.

Varje kodexempel innehåller en README.md som beskriver hur du skapar projektet (om tillämpligt) och kör exempelprogrammet. Kommentarer i koden hjälper dig att förstå viktiga avsnitt som implementerar autentisering och auktorisering med hjälp av autentiseringsbibliotek och identitetsplattformen.

Ensidesprogram

De här exemplen visar hur du skriver ett ensidesprogram som skyddas med Microsofts identitetsplattform. I de här exemplen används en av MSAL.js.

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
Angular Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Anropa .NET Core-webb-API
Anropa .NET Core-webb-API (B2C)
Anropa Microsoft Graph via OBO
Anropa .NET Core-webb-API med PoP
Använda approller för åtkomstkontroll
Använda säkerhetsgrupper för åtkomstkontroll
Distribuera till Azure Storage och App Service
MSAL-Angular • Auktoriseringskod med PKCE
• On-behalf-of (OBO)
• Bevis på innehav (PoP)
Blazor WebAssembly Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Distribuera till Azure App Service
MSAL.js Implicit Flow
JavaScript Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Anropa Node.js webb-API
Anropa Node.js webb-API (B2C)
Anropa Microsoft Graph via OBO
Anropa Node.js webb-API via OBO och CA
Distribuera till Azure Storage och App Service
MSAL.js • Auktoriseringskod med PKCE
• On-behalf-of (OBO)
• Villkorlig åtkomst (CA)
React Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Anropa Node.js webb-API
Anropa Node.js webb-API (B2C)
Anropa Microsoft Graph via OBO
Anropa Node.js webb-API med PoP
Använda approller för åtkomstkontroll
Använda säkerhetsgrupper för åtkomstkontroll
Distribuera till Azure Storage och App Service
Distribuera till Azure Static Web Apps
MSAL-React • Auktoriseringskod med PKCE
• On-behalf-of (OBO)
• Villkorlig åtkomst (CA)
• Bevis på innehav (PoP)

Webbprogram

Följande exempel illustrerar webbprogram som loggar in användare. Vissa exempel visar även programmet som anropar Microsoft Graph eller ditt eget webb-API med användarens identitet.

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
ASP.NET Core ASP.NET Core series
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Anpassa tokencache
Anropa Graph (flera klient)
Anropa Azure REST API:er
Skydda webb-API
Skydda webb-API (B2C)
Skydda webb-API för flera innehavare
Använda approller för åtkomstkontroll
Använda säkerhetsgrupper för åtkomstkontroll
Distribuera till Azure Storage och App Service
• MSAL.NET
• Microsoft.Identity.Web
• OpenID-anslutning
• Auktoriseringskod
• On-Behalf-of
Blazor Blazor Server Series
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Anropa webb-API
Anropa webb-API (B2C)
MSAL.NET Beviljande av auktoriseringskod Flow
ASP.NET Core Avancerade scenarier för tokencache • MSAL.NET
• Microsoft.Identity.Web
On-Behalf-of (OBO)
ASP.NET Core Använd auth-kontexten för villkorsstyrd åtkomst för att utföra stegvis autentisering • MSAL.NET
• Microsoft.Identity.Web
Authorization code (Auktoriseringskod)
ASP.NET Core Migrering av Active Directory FS till Azure AD MSAL.NET • SAML
• OpenID-anslutning
ASP.NET Microsoft Graph Training Sample
Logga in användare och anropa Microsoft Graph
Logga in användare och anropa Microsoft Graph med administratörsbegränsat omfång
Snabbstart: Logga in användare
MSAL.NET • OpenID-anslutning
• Auktoriseringskod
Java

Spring
Azure AD Spring Boot Starter Series
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Använda approller för åtkomstkontroll
Använda grupper för åtkomstkontroll
Distribuera till Azure App Service
• MSAL Java
• Azure AD Boot Starter
Authorization code (Auktoriseringskod)
Java

Servlets
Spring-less Servlet-serien
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Använda approller för åtkomstkontroll
Använda säkerhetsgrupper för åtkomstkontroll
Distribuera till Azure App Service
MSAL Java Authorization code (Auktoriseringskod)
Java Logga in användare och anropa Microsoft Graph MSAL Java Authorization code (Auktoriseringskod)
Java

Spring
Logga in användare och anropa Microsoft Graph via OBO

Webb-API
MSAL Java • Auktoriseringskod
• On-Behalf-of (OBO)
Node.js

Express
Express-webbappsserie
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Distribuera till Azure App Service
Använda approller för åtkomstkontroll
Använda säkerhetsgrupper för åtkomstkontroll
Webbapp som loggar in användare
MSAL-nod Authorization code (Auktoriseringskod)
Python

Flask
Flask-serien
Logga in användare
Logga in användare (B2C)
Logga in användare och anropa Microsoft Graph
Anropa Microsoft Graph
Distribuera till Azure App Service
MSAL Python Authorization code (Auktoriseringskod)
Python

Django
Django-serien
Logga in användare
Logga in användare (B2C)
Anropa Microsoft Graph
Distribuera till Azure App Service
MSAL Python Authorization code (Auktoriseringskod)
Ruby Graph utbildning
Logga in användare och anropa Microsoft Graph
OmniAuth OAuth2 Authorization code (Auktoriseringskod)

Webb-API

Följande exempel visar hur du skyddar ett webb-API med Microsofts identitetsplattform och hur du anropar ett nedströms-API från webb-API:et.

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
ASP.NET Anropa Microsoft Graph MSAL.NET On-Behalf-of (OBO)
ASP.NET Core Logga in användare och anropa Microsoft Graph MSAL.NET On-Behalf-of (OBO)
Java Logga in användare MSAL Java On-Behalf-of (OBO)
Node.js Skydda ett Node.js webb-API
Skydda ett Node.js webb-API med Azure AD B2C
MSAL-nod Auktoriseringsbjörn

Skrivbord

I följande exempel visas offentliga klientprogram som har åtkomst till Microsoft Graph API eller ditt eget webb-API i användarens namn. Förutom desktop-exemplet (konsolen) med Workspace Application Manager (WAM) använder alla dessa klientprogram Microsoft Authentication Library (MSAL).

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
.NET Core Anropa Microsoft Graph
Anropa Microsoft Graph med tokencache
Anropa Micrsoft Graph med HTML för anpassat webbgränssnitt
Anropa Microsoft Graph med anpassad webbläsare
Logga in användare med enhetskodflöde
MSAL.NET • Auktoriseringskod med PKCE
• Enhetskod
.NET Anropa Microsoft Graph med daemon-konsolen
Anropa webb-API med daemonkonsolen
MSAL.NET Auktoriseringskod med PKCE
.NET Anropa skyddat API med integrerad Windows autentisering MSAL.NET Integrerad Windows autentisering
Java Anropa Microsoft Graph MSAL Java Integrerad Windows autentisering
Node.js Logga in användare MSAL-nod Auktoriseringskod med PKCE
PowerShell Anropa Microsoft Graph genom att logga in användare med användarnamn/lösenord MSAL.NET Autentiseringsuppgifter för lösenord för resursägare
Python Logga in användare MSAL Python Auktoriseringskod med PKCE
Universal Window Platform (UWP) Anropa Microsoft Graph MSAL.NET Webbkontoansvarig
Windows Presentation Foundation (WPF) Logga in användare och anropa Microsoft Graph MSAL.NET Auktoriseringskod med PKCE
XAML Logga in användare och anropa ASP.NET webb-API
Logga in användare och anropa Microsoft Graph
MSAL.NET Auktoriseringskod med PKCE

Mobilt

Följande exempel visar offentliga klientmobilprogram som har åtkomst till Microsoft Graph API eller ditt eget webb-API i användarens namn. Dessa klientprogram använder Microsoft Authentication Library (MSAL).

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
iOS Anropa Microsoft Graph intern
Anropa Microsoft Graph med Azure AD nxoauth
MSAL iOS Auktoriseringskod med PKCE
Java Logga in användare och anropa Microsoft Graph MSAL Android Auktoriseringskod med PKCE
Kotlin Logga in användare och anropa Microsoft Graph MSAL Android Auktoriseringskod med PKCE
Xamarin Logga in användare och anropa Microsoft Graph
Logga in användare med a broker och anropa Microsoft Graph
MSAL.NET Auktoriseringskod med PKCE

Tjänst/daemon

I följande exempel visas ett program som har åtkomst till Microsoft Graph API med sin egen identitet (utan användare).

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
ASP.NET Anropa Microsoft Graph
Anropa webb-API
Anropa ett eget webb-API
Använda hanterad identitet och Azure Key Vault
Multi-tenant with Microsofts identitetsplattform endpoint
MSAL.NET Beviljande av klientautentiseringsuppgifter
Java Anropa Microsoft Graph MSAL Java Beviljande av klientautentiseringsuppgifter
Node.js Logga in användare och anropa webb-API MSAL-nod Beviljande av klientautentiseringsuppgifter
Python Anropa Microsoft Graph med hemlighet
Anropa Microsoft Graph med certifikat
MSAL Python Beviljande av klientautentiseringsuppgifter

Azure Functions som webb-API:er

Följande exempel visar hur du skyddar en Azure-funktion med hjälp av HttpTrigger och exponerar ett webb-API med Microsofts identitetsplattform och hur du anropar ett nedströms-API från webb-API:et.

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
.NET Webb-API för .NET Azure-funktioner som skyddas av Azure AD MSAL.NET Authorization code (Auktoriseringskod)
Node.js Node.js webb-API för Azure-funktioner som skyddas av Azure AD MSAL-nod Auktoriseringsbjörn
Node.js Anropa Microsoft Graph API för en användares räkning MSAL-nod On-Behalf-of (OBO)
Python Webb-API för Python Azure-funktioner som skyddas av Azure AD MSAL Python Authorization code (Auktoriseringskod)

Headless

I följande exempel visas ett offentligt klientprogram som körs på en enhet utan en webbläsare. Appen kan vara ett kommandoradsverktyg, en app som körs på Linux eller Mac eller ett IoT-program. Exemplet innehåller en app som har åtkomst till Microsoft Graph API i namnet på en användare som loggar in interaktivt på en annan enhet (till exempel en mobiltelefon). Det här klientprogrammet använder Microsoft Authentication Library (MSAL).

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
.NET Core Anropa skyddat API från endast textenhet MSAL.NET Enhetskod
Java Logga in användare och anropa skyddat API MSAL Java Enhetskod
Python Anropa Microsoft Graph MSAL Python Enhetskod

SaaS med flera klientorganisationer

Följande exempel visar hur du konfigurerar ditt program för att godkänna inloggningar från valfri Azure Active Directory (Azure AD) klientorganisation. Om du konfigurerar ditt program för flera klientorganisationer kan du erbjuda ett SaaS-program(Programvara som en tjänst) till många organisationer, så att användarna kan logga in på ditt program när de har gett sitt medgivande.

Språk/
Plattform
Kodexempel
på GitHub
Auth
bibliotek
Auth-flöde
ASP.NET Core ASP.NET Core MVC-webbapp anropar Microsoft Graph API MSAL.NET OpenID Connect
ASP.NET Core ASP.NET Core MVC-webbapp anropar ASP.NET Core Webb-API MSAL.NET Authorization code (Auktoriseringskod)

Nästa steg

Om du vill fördjupa dig i mer exempelkod kan du läsa: