Создать бета-версию ManagedAppPolicies API Microsoft Graph, не работающую с разрешениями приложений

Я пытаюсь создать политику защиты приложений intune. Я пытался сделать это с помощью следующих API, но ни один из них не работает: POST /managedAppPolicies/ — при создании управляемой политики (пробовал как для iOS, так и для Android) — возвращает 401 Unauthorized.

Пример запроса на создание политики управляемого приложения:

POST /managedAppPolicies/  
Request Body :
{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#managedAppPolicies/$entity",
  "@odata.type": "#microsoft.graph.iosManagedAppProtection",
  "displayName": "Test IOS Policy",
  "description": "test",
  "periodOfflineBeforeAccessCheck": "PT12H",
  "periodOnlineBeforeAccessCheck": "PT30M",
  "allowedInboundDataTransferSources": "allApps",
  "allowedOutboundDataTransferDestinations": "allApps",
  "organizationalCredentialsRequired": false,
  "allowedOutboundClipboardSharingLevel": "allApps",
  "dataBackupBlocked": true,
  "deviceComplianceRequired": true,
  "managedBrowserToOpenLinksRequired": false,
  "saveAsBlocked": false,
  "periodOfflineBeforeWipeIsEnforced": "P90D",
  "pinRequired": true,
  "maximumPinRetries": 5,
  "simplePinBlocked": false,
  "minimumPinLength": 4,
  "pinCharacterSet": "any",
  "allowedDataStorageLocations": [
    "oneDriveForBusiness",
    "sharePoint"
  ],
  "contactSyncBlocked": false,
  "printBlocked": false,
  "fingerprintBlocked": false,
  "targetedSecurityGroupIds": [  "valid directory group id 1",
    "valid directory group id 2" ],
  "appDataEncryptionType": "whenDeviceLocked"
}

Ответ: 401 Неавторизованный

{
  "error": {
"code": "UnknownError",
"message": "{\"ErrorCode\":\"Forbidden\",\"Message\":\"An error has occurred - Operation ID (for customer support): 00000000-0000-0000-0000-000000000000 - Activity ID: f932cecd-028f-42ea-9464-abf6e04f9ede - Url: https://fef.amsua0502.manage.microsoft.com/MAMAdmin/MAMAdminFEService/managedAppPolicies?api-version=2016-06-16 - CustomApiErrorPhrase: \",\"Target\":null,\"Details\":null,\"InnerError\":null,\"InstanceAnnotations\":[]}",
"innerError": {
  "request-id": "f932cecd-028f-42ea-9464-abf6e04f9ede",
  "date": "2017-03-03T17:44:10"
}

} }

Я создал веб-приложение на портале Azure, а также предоставил разрешение DeviceManagementApps.ReadWrite.All для своего приложения. Access_token был получен программным путем с помощью

https://login.microsoftonline.com/<tenantid>/oauth2/token

где его можно получить в контексте приложения, а не предоставлять учетные данные пользователя в веб-форме (метод гранта пользователя)

P.S. Я убедился, что access_token, сгенерированный из clientid и secret, верен, так как тот же токен работает при использовании для поиска групп в Azure.

GET https://graph.microsoft.com/beta/groups?$filter=startswith(displayName,%27test users%27)

person adison88    schedule 03.03.2017    source источник


Ответы (2)


Не похоже, что пользователю предоставляется лицензия intune. Не могли бы вы попробовать предоставить лицензию вашему пользователю RBAC?

person Alemeshet Alemu - MSFT    schedule 05.03.2017
comment
У моего пользователя есть 3 лицензии: Enterprise Mobility+Security E5, Intune и Office365 Enterprise E3. все равно не работает. @alemeshet Алему - person adison88; 06.03.2017

Я работаю в команде Microsoft Intune, особенно над интеграцией между Microsoft Intune и Microsoft Graph.

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

Надеюсь это поможет

Питер

person Peter Richards - MSFT    schedule 06.03.2017