Мы хотим использовать API Azure Intune для получения подробной информации об управляемых устройствах:
https://docs.microsoft.com/en-us/graph/api/intune-devices-manageddevice-list?view=graph-rest-1.0
Наша модель приложения - это сервисный демон, работающий без какого-либо взаимодействия с пользователем, в основномсрабатывает по определенному графику.Когда мы используем субъект-службу, связанный с приложением, зарегистрированным в Azure - эта конечная точка возвращает 401, запрещенный с некоторым загадочным ответным сообщением:
{
"error": {
"code": "UnknownError",
"message": "{\"ErrorCode\":\"Forbidden\",\"Message\":\"{\\r\\n
\\\"_version\\\": 3,\\r\\n \\\"Message\\\": \\\"An error has occurred -
Operation ID (for customer support):
00000000-0000-0000-0000-000000000000 - Activity ID:
a4169dc1-e397-4459-a75f-454a73a38ab1 - Url:
https://fef.amsua0402.manage.microsoft.com/DeviceFE/StatelessDeviceFEService/deviceManagement/managedDevices?api-version=2018-05-24\\\",\\r\\n
\\\"CustomApiErrorPhrase\\\": \\\"\\\",\\r\\n \\\"RetryAfter\\\":
null,\\r\\n \\\"ErrorSourceService\\\": \\\"\\\",\\r\\n
\\\"HttpHeaders\\\":
\\\"{\\\\\\\"WWW-Authenticate\\\\\\\":\\\\\\\"Bearer
realm=\\\\\\\\\\\\\\\"urn:intune:service,f0f3c450-59bf-4f0d-b1b2-0ef84ddfe3c7\\\\\\\\\\\\\\\"\\\\\\\"}\\\"\\r\\n}\",\"Target\":null,\"Details\":null,\"InnerError\":null,\"InstanceAnnotations\":[]}",
"innerError": {
"request-id": "a4169dc1-e397-4459-a75f-454a73a38ab1",
"date": "2019-02-12T17:15:06"
}
}
}
Мы предоставили все разрешения для зарегистрированного приложения.Единственный API-интерфейс устройства, который мы смогли вызвать с использованием принципала службы, был
https://docs.microsoft.com/en-us/graph/api/user-list-owneddevices?view=graph-rest-1.0
Но подробности ответа очень просты.