Примеры кода для платформы удостоверений Майкрософт

Эти примеры кода создаются и обслуживаются корпорацией Майкрософт для демонстрации использования библиотек проверки подлинности с платформой удостоверений Майкрософт. Распространенные сценарии проверки подлинности и авторизации реализуются в нескольких типах приложений, на различных языках разработки и платформах.

  • Выполните вход пользователей в веб-приложения и предоставьте доступ к защищенным веб-API.
  • Защитите веб-API, запросив маркер доступа для выполнения операций API.

Каждый пример кода включает файл README.md, описывающий, как выполнить сборку проекта (если применимо) и запустить пример приложения. Комментарии в коде помогут понять, как эти библиотеки используются в приложении для выполнения проверки подлинности и авторизации с помощью платформы удостоверений.

Примеры и руководства

Используйте вкладки для сортировки примеров по типу приложения или предпочитаемого языка или платформы.

Одностраничные приложения

В этих примерах показано, как создать одностраничное приложение, защищенное с помощью платформы удостоверений Майкрософт. В этих примерах используется одна из разновидностей MSAL.js.

Веб-приложения

В следующем примере показаны веб-приложения для входа пользователей. В некоторых примерах приложение вызывает Microsoft Graph или веб-API с использованием удостоверения пользователя.

Язык и платформа Примеры кода на GitHub Библиотеки проверки подлинности Поток аутентификации Быстрое начало Учебник
ASP.NET Обучающий пример Microsoft Graph
Выполнение входа пользователей и вызов Microsoft Graph с ограниченными областями администратора
MSAL.NET
Microsoft.Identity.Web
Расширенные сценарии кэша маркеров
• Подключение OpenID
• Код авторизации
• Поток On-Behalf-Of (OBO)
Краткое руководство
ASP.NET Core Выполнение входа пользователей
Вызов Microsoft Graph
Настройка кэша маркеров
Используйте контекст проверки подлинности условного доступа для выполнения поэтапной проверки подлинности
Граф вызовов (мультитенантный)
Вызов REST API Azure
Защита веб-API
Защита мультитенантного веб-API
Использование ролей приложений для контроля доступа
Использование групп безопасности для контроля доступа
Развертывание в службе хранилища Azure и Службе приложений
службы федерации Active Directory (AD FS) миграции Microsoft Entra
Microsoft.Identity.Web • Подключение OpenID
• Код авторизации
• От имени потока (OBO)
Краткое руководство Руководство
Blazor Выполнение входа пользователей
Вызов Microsoft Graph
Вызов веб-API
MSAL для .NET гибридный поток
Java Spring Выполнение входа пользователей
Вызов Microsoft Graph
Использование ролей приложений для контроля доступа
Использование групп для контроля доступа
Защита веб-API
Развертывание в Службе приложений Azure
MSAL Java Код авторизации Руководство
Сервлеты Java Выполнение входа пользователей
Вызов Microsoft Graph
Использование ролей приложений для контроля доступа
Использование групп безопасности для контроля доступа
Развертывание в Службе приложений Azure
MSAL Java Код авторизации Краткое руководство
Node.js Express Выполнение входа пользователей
Экспресс-веб-приложение, созданное с помощью узла MSAL и платформа удостоверений Майкрософт
Вызов Microsoft Graph
Вызов Microsoft Graph через прокси-сервер BFF
Использование ролей приложений для контроля доступа
Использование групп безопасности для контроля доступа
Развертывание в Службе приложений Azure
Узел MSAL • Код авторизации
• Прокси-сервер серверной части для внешнего интерфейса (BFF)
Краткое руководство Руководство
Python Flask Выполнение входа пользователей
Шаблон для входа в идентификатор Microsoft Entra и при необходимости вызов нижестоящего API (Microsoft Graph)
Развертывание в Службе приложений Azure
MSAL Python Код авторизации Краткое руководство Руководство
Python Django Выполнение входа пользователей MSAL Python Код авторизации
Ruby Выполнение входа пользователей и вызов Microsoft Graph OmniAuth OAuth2 Код авторизации

Веб-интерфейс API

В следующих примерах показано, как защитить веб-API с помощью платформы удостоверений Майкрософт и как вызывать из веб-API подчиненный API.

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
ASP.NET Вызов Microsoft Graph MSAL для .NET Поток On-Behalf-Of (OBO) Краткое руководство
ASP.NET Core Управление доступом (защищенные маршруты) с платформа удостоверений Майкрософт MSAL для .NET Поток On-Behalf-Of (OBO) Краткое руководство Руководство
Java Защита веб-API Java Spring Boot с помощью платформа удостоверений Майкрософт MSAL Java Поток On-Behalf-Of (OBO)
Node.js Защита веб-API Node.js Узел MSAL Маркер носителя авторизации

Персональный компьютер

В следующих примерах показаны общедоступные клиентские приложения, которые обращаются к API Microsoft Graph или веб-API от имени пользователя. Кроме примера классического (консольного) приложения с диспетчером веб-проверки подлинности (WAM), все эти клиентские приложения используют библиотеку проверки подлинности Майкрософт (MSAL).

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
.NET Core Вызов Microsoft Graph
Вызов Microsoft Graph с помощью кэша токена
Вызов Microsoft Graph с помощью пользовательского веб-интерфейса HTML
Вызов Microsoft Graph с помощью пользовательского браузера HTML
Вход пользователей с помощью потока кода устройства
Вызов Microsoft Graph путем входа пользователей с помощью имени пользователя или пароля
Проверка подлинности пользователей с помощью MSAL.NET в классическом приложении WinUI
MSAL для .NET • Код авторизации с помощью PKCE
• Код устройства
• Учетные данные пароля владельца ресурса
Java Вызов Microsoft Graph MSAL Java Встроенная проверка подлинности Windows
Node.js Выполнение входа пользователей Узел MSAL Код авторизации с PKCE Краткое руководство Руководство
Python Выполнение входа пользователей MSAL Python Учетные данные владельца ресурса с паролем
Windows Presentation Foundation (WPF) Выполнение входа пользователей и вызов Microsoft Graph
Вход пользователя Windows Presentation Foundation (WPF) с защищенным доступом к веб-API (Microsoft Graph)
Вход пользователей и вызов веб-API ASP.NET Core
Выполнение входа пользователей и вызов Microsoft Graph
MSAL для .NET Код авторизации с PKCE Краткое руководство Руководство

Мобильные службы

В следующих примерах показаны общедоступные клиентские мобильные приложения, которые обращаются к API Microsoft Graph. Все эти клиентские приложения используют библиотеку проверки подлинности Майкрософт (MSAL).

Служба и управляющая программа

В следующем примере показано приложение, которое обращается к Microsoft Graph с использованием собственного удостоверения (без пользователя).

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
.NET Консольное приложение .NET, которое обращается к защищенному веб-API
Мультитенантная конечная точка платформа удостоверений Майкрософт
MSAL для .NET Предоставление учетных данных клиента Краткое руководство Руководство
.NET Core Вызов Microsoft Graph
Вызов веб-API
Использование управляемого удостоверения для вызова MSGraph
Использование управляемого удостоверения для вызова API
Рабочая роль, вызывающая API
Microsoft.Identity.Web Предоставление учетных данных клиента
Java Вызов Microsoft Graph с помощью секрета
Вызов Microsoft Graph с помощью сертификата
MSAL Java Предоставление учетных данных клиента Краткое руководство
Node.js Вызов Microsoft Graph с помощью секрета Узел MSAL Предоставление учетных данных клиента Краткое руководство Руководство
Python Вызов Microsoft Graph с помощью секрета
Вызов Microsoft Graph с помощью сертификата
MSAL Python Предоставление учетных данных клиента Краткое руководство

Без браузера (без головы)

В следующем примере показано общедоступное клиентское приложение, запущенное на устройстве без веб-браузера. Это приложение может быть программой командной строки или приложением для Linux или Mac либо приложением Интернета вещей. Пример функции приложения, обращающегося к API Microsoft Graph, в имени пользователя, выполняющего интерактивный вход на другом устройстве (например, на мобильном телефоне). Это клиентское приложение использует библиотеку проверки подлинности Майкрософт (MSAL).

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
.NET Core Вызов защищенного API с устройства только для текста MSAL для .NET Код устройства
Java Вход пользователей и вызов защищенного API с устройства только для текста MSAL Java Код устройства
Python Вызов Microsoft Graph MSAL Python Код устройства

Функции Azure в качестве интерфейсов веб-API

В следующих примерах показано, как защитить функцию Azure с помощью HttpTrigger и веб-API с помощью платформы удостоверений Майкрософт и как вызывать из веб-API подчиненный API.

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
Python Веб-API функций Python, защищенный идентификатором Microsoft Entra MSAL Python Код авторизации

Приложения Microsoft Teams

В следующем примере показано приложение Tab Microsoft Teams, которое осуществляет вход пользователей в систему. Кроме того, в нем показано, как вызвать API Microsoft Graph с удостоверением пользователя с помощью Библиотеки проверки подлинности Майкрософт (MSAL).

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
Node.js Приложение tab Teams: единый вход и вызов Microsoft Graph Узел MSAL Поток On-Behalf-Of (OBO)

Мультитенантное приложение SaaS

В следующих примерах показано, как настроить приложение для приема входов из любого клиента Microsoft Entra. Настройка приложения в качестве мультитенантного означает, что вы можете предложить приложению Software as a Service (SaaS) для многих организаций, что позволяет своим пользователям входить в приложение после предоставления согласия.

Язык/
Платформа
Примеры кода
на GitHub
Проверка подлинности
libraries
Поток аутентификации Быстрое начало Учебник
ASP.NET Core веб-приложение ASP.NET Core MVC вызывает API Microsoft Graph
веб-приложение ASP.NET Core MVC вызывает веб-API ASP.NET Core
MSAL для .NET • Подключение OpenID
• Код авторизации

Если вы хотите более подробно изучить примеры кодов, см. следующие ресурсы.