Примеры кода Azure Active Directory (конечная точка версии 1.0)
Предупреждение
В этом руководстве используется устаревшая конечная точка Azure Active Directory версии 1.0. Для новых проектов используйте платформу удостоверений Майкрософт.
Azure Active Directory (Azure AD) можно использовать для добавления проверки подлинности и авторизации в веб-приложения и веб-API.
Этот раздел содержит ссылки на примеры, с помощью которых вы сможете узнать о конечной точке Azure AD версии 1.0. В этих примерах показано, как это можно сделать. Также приведены фрагменты кода, которые можно использовать в приложениях. На странице примеров кода приведены ссылки на статьи с подробными сведениями о требованиях, установке и настройке. Код указан с комментариями, чтобы можно было понять важные разделы.
Примечание
Если вас интересуют Microsoft Entra примеры кода версии 2, см. примеры кода версии 2.0 по сценариям.
Предупреждение
Поддержка Библиотеки проверки подлинности Active Directory (ADAL) заканчивается в декабре 2022 г. Приложения, использующие ADAL в существующих версиях ОС, будут работать и дальше, но не будут получать техническую поддержку и обновления системы безопасности. Без постоянных обновлений приложения, использующие ADAL, будут становиться все более уязвимыми для новейших шаблонов атак на систему безопасности. Дополнительные сведения см. в статье о переносе приложений в MSAL.
Сведения о базовых сценариях для каждого типа примера см. в разделе Сценарии проверки подлинности в Azure AD.
Вы также можете поделиться своими примерами на сайте GitHub. Чтобы узнать, как это сделать, ознакомьтесь с примерами и документацией по Azure Active Directory.
Одностраничные приложения
В этом примере показано, как создать одностраничное приложение, защищенное с помощью Azure AD.
Платформа | Вызывает собственный API | Вызывает другой веб-API |
---|---|---|
javascript-singlepageapp | ||
angularjs-singlepageapp | angularjs-singlepageapp-cors |
Веб-приложения
Веб-приложения, обрабатывающие вход пользователей и вызывающие Microsoft Graph или веб-API с удостоверением пользователя
В следующем примере показаны веб-приложения для входа пользователей. Некоторые из этих приложений также обращаются к Microsoft Graph или к веб-API от имени вошедшего в систему пользователя.
Платформа | Только вход пользователей | Вызывает Microsoft Graph | Вызывает другой веб-API ASP.NET или ASP.NET Core 2.0 |
---|---|---|---|
ASP.NET Core 2.0 | dotnet-webapp-openidconnect-aspnetcore | webapp-webapi-multitenant-openidconnect-aspnetcore (граф Azure AD) | dotnet-webapp-webapi-openidconnect-aspnetcore |
ASP.NET 4.5 | webapp-WSFederation-dotNet dotnet-webapp-webapi-oauth2-useridentity | dotnet-webapp-multitenant-openidconnect (граф Azure AD) | |
python-webapp-graphapi | |||
java-webapp-openidconnect | |||
php-graphapi-web |
Веб-приложения, демонстрирующие управление доступом на основе ролей (авторизация)
В примерах ниже показано, как реализовать управление доступом на основе ролей (RBAC). RBAC используется, чтобы ограничить разрешения определенных пользователей на доступ к некоторым функциям в веб-приложении. Эти пользователи проходят авторизацию в зависимости от того, принадлежат ли они группе Azure AD или имеют определенную роль приложения.
Платформа | Образец | Описание |
---|---|---|
ASP.NET 4.5 | dotnet-webapp-groupclaims dotnet-webapp-roleclaims | Веб-приложение MVC .NET 4.5, использующее для проверки подлинности роли Azure AD |
Классические и мобильные клиентские приложения, вызывающие Microsoft Graph или веб-API
В следующих примерах показаны общедоступные клиентские приложения (классические и мобильные приложения), которые обращаются к Microsoft Graph или веб-API от имени пользователя. В зависимости от устройств и платформ, пользователи могут входить в приложения различными способами (последовательности или предоставление):
- Интерактивно
- автоматически (с использованием встроенной проверки подлинности Windows или имени пользователя и пароля);
- делегируя интерактивный вход в систему на другое устройство (поток кода устройства, используемый на устройствах, которые не предоставляют веб-элементы управления).
Клиентское приложение | Платформа | Поток или предоставление | Вызывает Microsoft Graph | Вызывает веб-API ASP.NET или ASP.NET Core 2.x |
---|---|---|---|---|
Классическое приложение (WPF) | Интерактивно | Часть dotnet-native-multitarget |
dotnet-native-desktop dotnet-native-aspnetcore dotnet-webapi-manual-jwt-validation |
|
Мобильное приложение (UWP) | Интерактивно | dotnet-native-uwp-wam В этом примере используется WAM, а не ADAL.NET |
dotnet-windows-store (приложение UWP, использующее ADAL.NET для обращения к веб-API одного клиента)
dotnet-webapi-multitenant-windows-store (приложение UWP, использующее ADAL.NET для обращения к веб-API нескольких клиентов) |
|
Мобильное приложение (Android, iOS, UWP) | Интерактивно | dotnet-native-multitarget |
||
Мобильное приложение (Android) | Интерактивно | android |
||
Мобильное приложение (iOS) | Интерактивно | nativeClient-iOS |
||
Классическое приложение (консольное) | Имя пользователя и пароль Встроенная проверка подлинности Windows | dotnet-native-headless |
||
Классическое приложение (консольное) | Имя пользователя и пароль | java-native-headless |
||
Классическое приложение (консольное) | Поток кода устройства | dotnet-deviceprofile |
Управляющая программа, которая обращается к веб-API с удостоверением приложения
В следующих примерах показаны классические приложения и веб-приложения, которые обращаются к Microsoft Graph или веб-API без указания пользователя (с удостоверением приложения).
Клиентское приложение | Платформа | Поток или предоставление | Вызывает веб-API ASP.NET или ASP.NET Core 2.0 |
---|---|---|---|
Управляющая программа (консольная) | Учетные данные клиента с секретом приложения или сертификатом | dotnet-daemon dotnet-daemon-certificate-credential | |
Управляющая программа (консольная) | Учетные данные клиента с сертификатом | dotnetcore-daemon-certificate-credential | |
Веб-приложение ASP.NET | Учетные данные клиента | dotnet-webapp-webapi-oauth2-appidentity |
Веб-API
Веб-API, защищенный с помощью Azure Active Directory
В следующем примере показано, как защитить веб-API node.js с помощью Azure AD.
В предыдущих разделах этой статьи можно также найти другие примеры, в которых показано клиентское приложение, обращающееся к веб-API ASP.NET или ASP.NET Core. Эти примеры не упоминаются повторно в этом разделе, но их можно найти в последнем столбце таблиц выше или ниже.
Платформа | Образец |
---|---|
node-webapi |
Веб-API, вызывающий Microsoft Graph или другой веб-API
В следующих примерах показан веб-API, который вызывает другой веб-API. Во втором примере показана организация условного доступа.
Платформа | Вызывает Microsoft Graph | Вызывает другой веб-API ASP.NET или ASP.NET Core 2.0 |
---|---|---|
ASP.NET 4.5 | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca |
Другие примеры Microsoft Graph
Дополнительные сведения о примерах и учебниках, в которых приводятся различные шаблоны использования API Microsoft Graph, включая аутентификацию в Azure AD, см. в статье Примеры и учебники сообщества Microsoft Graph.