Удаленный сервер возвратил ошибку: (401) Несанкционированный - PowerShell - Microsoft Graph API - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь получить список всех групп, в которых resourceProvisioningOptions = Team, вот URL-адрес, который получает все данные через вызов API:

$clientID = xxxx
$tenantName = xxxx
$ClientSecret = xxxx
$resource = "https://graph.microsoft.com/"


$ReqTokenBody = @{
Grant_Type    = "client_credentials"
Scope         = "https://graph.microsoft.com/.default"
client_Id     = $clientID
Client_Secret = $clientSecret 
} 

$authheader = @{

    'Authorization' = "Bearer $($Tokenresponse.access_token)"
    'Content-Type'='application\json'

}

$TokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$TenantName/oauth2/v2.0/token" -Method POST -Body $ReqTokenBody

$test = "'Team'"

$apiUrl = 'https://graph.microsoft.com/beta/groups?$filter=resourceProvisioningOptions/Any(x:x eq {0})' -f $test

$Data = Invoke-RestMethod -Uri $apiUrl -Headers $authheader -Body $ReqTokenBody -Method Get


$Groups = ($Data | select-object Value).Value | Select-Object  displayName, id, description, mail | Out-File .\texxtfile.txt

Однако я получаю ошибку 401, когдаЯ пытаюсь запустить скрипт, хотя у меня есть все разрешения, необходимые для вызова API.

1 Ответ

0 голосов
/ 12 октября 2019

Возможно, вы выбрали разрешения для приложения в приложении AAD. Есть дополнительный шаг. Вам нужно будет дать согласие администратора на ваше приложение на портале регистрации приложений, чтобы использовать Group.Read.All для его запуска. Если вы этого не сделали в пользовательском интерфейсе, произойдет сбой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...