Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вы можете настроить приложение с помощью Microsoft Entra ID и пройти проверку подлинности в Intune Data Warehouse. Этот процесс полезен для веб-сайтов, приложений и фоновых процессов, когда приложение не должно иметь доступа к учетным данным пользователя. С помощью следующих действий вы авторизуете свое приложение с Microsoft Entra ID с помощью OAuth 2.0.
Авторизация
Microsoft Entra ID использует OAuth 2.0 для авторизации доступа к веб-приложениям и веб-API в клиенте Microsoft Entra. В этом руководстве показано, как проверить подлинность приложения с помощью C#. Поток кода авторизации OAuth 2.0 описан в разделе 4.1 спецификации OAuth 2.0. Дополнительные сведения см. в разделах Авторизация доступа к веб-приложениям с помощью OAuth 2.0 и Microsoft Entra ID.
Azure KeyVault
В указанном ниже процессе используется закрытый метод для обработки и преобразования ключа приложения. Этот закрытый метод получил название SecureString. В качестве альтернативы для хранения ключа приложения можно использовать Azure KeyVault. Дополнительные сведения см. в разделе Key Vault.
Создание веб-приложения
В этом разделе укажите сведения о веб-приложении, на которое вы хотите указать в Intune. Веб-приложение является клиент-серверным приложением. Сервер предоставляет веб-приложение, включая его пользовательский интерфейс, содержимое и функциональные возможности. Этот тип приложений поддерживается отдельно в Интернете. Intune используется для предоставления веб-приложению доступа к Intune. Поток данных инициируется веб-приложением.
Войдите в Центр администрирования Microsoft Intune.
Выберите "Все службы>M365" Microsoft Entra ID>Microsoft Entra ID>Регистрация приложений.
Нажмите кнопку "Новая регистрация ", чтобы открыть панель "Регистрация приложения ".
В области регистрации приложения добавьте сведения о приложении:
- Имя приложения, например Intune App-Only Auth.
- Поддерживаемый тип учетной записи.
- Универсальный код ресурса (URI) перенаправления приложения. Это расположение, куда пользователи автоматически переходят в процессе проверки подлинности. Они должны доказать, что они те, за кого себя выдают. Подробнее см. в разделе Что такое доступ к приложениям и единый вход с Microsoft Entra ID?
Нажмите Зарегистрировать.
Примечание.
Скопируйте идентификатор приложения (клиента) из области приложений, чтобы использовать его позже.
Создание ключа (пароля)
В этом разделе Microsoft Entra ID создает значение раздела для вашего приложения.
В области "Регистрация приложений" выберите только что созданное приложение, чтобы отобразить панель приложения.
Выберите "Сертификаты & секреты" в верхней части области, чтобы отобразить панель "Сертификаты & секреты".
Выберите Секреты клиента в области Сертификаты & секреты .
Добавьте описание ключа и срок действия ключа.
Нажмите кнопку " Добавить ", чтобы сохранить и обновить ключи приложения.
Необходимо скопировать сгенерированное значение ключа (в кодировке base64).
Примечание.
Значение ключа исчезает после выхода из области "Сертификаты & секреты ". Вы не сможете получить ключ из этой панели позже. Скопируйте его, чтобы использовать позже.
Предоставление разрешений приложению
В этом разделе вы предоставляете разрешения приложениям.
- Выбор разрешений API Добавить>разрешениеРазрешения>IntuneApplication>.
- Выберите параметр get_data_warehouse (Получение сведений о хранилище данных из Microsoft Intune).
- Щелкните Добавить разрешения.
- Нажмите кнопку "Готово" в области доступа к API Add.
- Нажмите кнопку Предоставить согласие администратора на панели разрешений API и нажмите кнопку Да при повышении, чтобы обновить существующие разрешения, которые уже есть у этого приложения.
Создать маркер
Используя Visual Studio, создайте консольное приложение (платформа .NET Framework), поддерживающее .NET Framework и использующее C# в качестве языка программирования.
Выберите "Создать файл>>". Чтобы открыть диалоговое окно "Новый проект".
В левой части экрана выберите Visual C#, чтобы отобразить все проекты платформа .NET Framework.
Выберите консольное приложение (платформа .NET Framework), добавьте имя приложения и нажмите кнопку "ОК", чтобы создать его.
В Обозреватель решений выберите Program.cs, чтобы отобразить код.
В обозревателе решений добавьте ссылку на сборку
System.Configuration.Во всплывающем меню выберите пункт "Добавить>новый элемент". Откроется диалоговое окно "Добавить новый элемент ".
Слева в разделе Visual C# выберите "Код".
Выберите Класс, измените имя класса на IntuneDataWarehouseClass.cs и нажмите Добавить.
Добавьте следующий код в метод:
Mainvar applicationId = ConfigurationManager.AppSettings["appId"].ToString(); SecureString applicationSecret = ConvertToSecureStr(ConfigurationManager.AppSettings["appKey"].ToString()); // Load as SecureString from configuration file or secret store (i.e. Azure KeyVault) var tenantDomain = ConfigurationManager.AppSettings["tenantDomain"].ToString(); var msalContext = new AuthenticationContext($"https://login.windows.net/" + tenantDomain + "/oauth2/token"); AuthenticationResult authResult = msalContext.AcquireTokenAsync( resource: "https://api.manage.microsoft.com/", clientCredential: new ClientCredential( applicationId, new SecureClientSecret(applicationSecret))).Result;Чтобы добавить дополнительные пространства имен, добавьте следующий код в начало файла кода:
using System.Security; using Microsoft.Identity.Client; using System.Configuration;Примечание.
Необходимо использовать библиотеку проверки подлинности Майкрософт (MSAL). Подробности см. в статье Обновление приложений, чтобы использовать библиотеку проверки подлинности Майкрософт (MSAL) и API Microsoft Graph
После этого
Mainметода добавьте следующий закрытый метод для обработки и преобразования ключа приложения:private static SecureString ConvertToSecureStr(string appkey) { if (appkey == null) throw new ArgumentNullException("AppKey must not be null."); var secureAppKey = new SecureString(); foreach (char c in appkey) secureAppKey.AppendChar(c); secureAppKey.MakeReadOnly(); return secureAppKey; }В обозревателе решений щелкните правой кнопкой мыши "Ссылки" и выберите "Управление пакетами NuGet".
Найдите Microsoft.Identity.Client и установите связанный пакет Microsoft NuGet.
В Обозреватель решений выберите и откройте файл App.config.
Добавьте раздел так,
appSettingsчтобы xml-файл выглядел следующим образом:<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> </startup> <appSettings> <add key="appId" value="App ID created from 'Create a Web App' procedure"/> <add key="appKey" value="Key created from 'Create a key' procedure" /> <add key="tenantDomain" value="contoso.onmicrosoft.com"/> </appSettings> </configuration>Обновите
appIdзначения ,appKeyandtenantDomainв соответствии со значениями, связанными с уникальным приложением.Создайте свое приложение.
Примечание.
Чтобы просмотреть дополнительный код реализации, см. пример кода Intune-Data-Warehouse.
Дальнейшие действия
Дополнительные сведения о Azure Key Vault см. в статье Что такое Azure Key Vault?