Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается создание приложения для получения программного доступа к API microsoft Managed Desktop от имени пользователя.
Для доступа к API требуется проверка подлинности OAuth2.0. Дополнительные сведения см. в разделе Поток кода авторизации OAuth 2.0.
Чтобы настроить службу и получить маркер доступа, выполните следующие действия:
- Создание и регистрация приложения Microsoft Entra.
- Настройте разрешения для microsoft Managed Desktop в приложении.
- Получение согласия администратора.
- Получите маркер доступа с помощью этого приложения.
- Используйте маркер для доступа к API microsoft Managed Desktop.
Создать приложение
Для проверки подлинности с помощью конечной точки платформа удостоверений Майкрософт необходимо сначала зарегистрировать приложение на портале регистрации приложений Azure.
Для службы, которая будет вызывать API microsoft Managed Desktop с собственным удостоверением, необходимо зарегистрировать приложение для веб-платформы и скопировать следующие значения:
- идентификатор приложения, назначенный порталом регистрации Azure;
- секрет клиента (приложения) — пароль или пара из открытого и закрытого ключей (сертификат);
- URL-адрес перенаправления, с помощью которого служба будет получать ответы с маркерами;
Инструкции по настройке приложения на портале Azure см. в статье Регистрация приложения.
С помощью потока предоставления учетных данных клиента OAuth 2.0 приложение выполняет проверку подлинности непосредственно в конечной точке платформа удостоверений Майкрософт с помощью идентификатора приложения, назначенного Microsoft Entra ID, и секрета клиента, созданного с помощью портала.
Настройка разрешений
Чтобы настроить делегированные разрешения для приложения на портале регистрации приложений Azure, выполните следующие действия.
- На странице разрешений API приложения выберите Добавить разрешения > API API, которые используются >в моей организации, введите Интерфейсы >API современных рабочих клиентов, выберите Современные API-интерфейсы клиента на рабочем месте.
- Выберите Делегированные разрешения > MWaaSDevice.Read, а затем выберите Добавить разрешения.
- Чтобы настроить дополнительные делегированные разрешения для приложения на портале регистрации приложений Azure, на странице разрешений API приложения выберите Добавить разрешение >, выберите Microsoft Graph.
- Выберите Делегированные разрешения, >выберите offline_access и openid, а затем выберите Добавить разрешения.
Получение токена доступа
В потоке предоставления учетных данных клиента OAuth 2.0 вы используете идентификатор приложения и секрет клиента, сохраненные во время регистрации приложения, чтобы запросить маркер доступа непосредственно из конечной точки /token
платформы удостоверений Майкрософт.
Первым шагом к получению маркера доступа для потока кода авторизации OAuth 2.0 является перенаправление пользователя в конечную точку платформа удостоверений Майкрософт/authorize
. Microsoft Entra ID войдет в систему пользователя и запросит его согласие на разрешения, запрашиваемые приложением. В потоке предоставления кода авторизации после получения согласия Microsoft Entra ID вернет приложению объект authorization_code
, который он может активировать в конечной точке платформа удостоверений Майкрософт/token для маркера доступа.
Запрос авторизации
В потоке предоставления учетных данных клиента OAuth 2.0 вы используете идентификатор приложения и секрет клиента, сохраненные во время регистрации приложения, чтобы запросить маркер доступа непосредственно из конечной точки /token
платформы удостоверений Майкрософт.
https://login.microsoftonline.com/{tenantId}/oauth2/authorize
Параметр | Условие | Описание |
---|---|---|
tenantId | Обязательный | Microsoft Entra ID клиента. |
client_id | Обязательный | Идентификатор приложения, назначенный при регистрации приложения. |
Scope | Обязательный | Должен быть включен: openid offline_access https://mwaas-services-customerapi-prod.azurewebsites.net/.default |
grant_type | Обязательный | Должно быть задано значение client_credential . |
response_type | Обязательный | Должен быть кодом. |
redirect_uri | Рекомендовано | Объект redirect_uri приложения, в котором приложение может отправлять и получать ответы на проверку подлинности. Он должен точно соответствовать одному из redirect_uris зарегистрированных на портале регистрации приложений. |
Отклик на авторизацию
Если пользователь соглашается с разрешениями, запрошенными приложением, ответ будет содержать код авторизации в параметре code.
Запрос на получение маркера
Если пользователь соглашается с разрешениями, запрошенными приложением, ответ будет содержать код авторизации в параметре code.
https://login.microsoftonline.com/{tenantId}/oauth2/token
Параметр | Условие | Описание |
---|---|---|
tenantId | Обязательный | Microsoft Entra ID клиента. |
client_id | Обязательный | Идентификатор приложения, назначенный при регистрации приложения. |
Scope | Обязательный | Необходимое значение — https://mwaas-services-customerapi-prod.azurewebsites.net/.default . |
client_secret | Обязательный | Секрет клиента, созданный для приложения на портале регистрации приложений. |
grant_type | Обязательный | Должно быть задано значение authorization_code . |
Код | Обязательный | Код авторизации, полученный в рамках запроса авторизации. |
Ответ с маркером
Успешный ответ JSON выглядит следующим образом:
{
"token_type": "Bearer",
"expires_in": "3599",
"access_token": "access_token"
}
Параметр | Описание |
---|---|
access_token | Запрошенный маркер доступа. Приложение может использовать этот маркер в вызовах API. |
token_type | Должен быть носителем. |
expires_in | Срок действия маркера доступа (в секундах). |
Использование маркера для доступа к API microsoft Managed Desktop
- Выберите API, который вы хотите использовать.
- Задайте заголовок авторизации в HTTP-запросе, отправляемом в "Bearer {token}" (Bearer — это схема авторизации).