#powershell
Вопрос:
Я попробовал ниже, я могу открыть сеанс, но любую команду, которую я хочу запустить там после. Я получаю «Недостаточные привилегии для завершения операции».
Где или какие привилегии я должен добавить в свое приложение или мой код написан правильно.
$clientId = "appid"
$clientSecret = "secter"
$tenantName = "companydomain/tenant"
$tokenBody = @{
Grant_Type = "client_credentials"
Scope = "https://graph.windows.net/.default"
Client_Id = $clientId
Client_Secret = $clientSecret
}
$AADTokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$tenantName/oauth2/v2.0/token" -Method POST -Body $tokenBody -ContentType "application/x-www-form-urlencoded"
$tokenBody = @{
Grant_Type = "client_credentials"
Scope = "https://graph.microsoft.com/.default"
Client_Id = $clientId
Client_Secret = $clientSecret
}
$graphTokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$tenantName/oauth2/v2.0/token" -Method POST -Body $tokenBody -ContentType "application/x-www-form-urlencoded"
Connect-AzureAD -TenantId 'tenantid' -AadAccessToken $AADTokenResponse.access_token -MsAccessToken $graphTokenResponse.access_token -AccountId "userid"
Get-AzureADTenantDetail
Get-AzureADTenantDetail : Error occurred while executing GetTenantDetails
Code: Authorization_RequestDenied
Message: Insufficient privileges to complete the operation.
RequestId: 3f0689b8-220b-4c13-869a-0b34530435fe
DateTimeStamp: Sun, 22 Aug 2021 11:48:44 GMT
HttpStatusCode: Forbidden
HttpStatusDescription: Forbidden
HttpResponseStatus: Completed
At line:1 char:1
Get-AzureADTenantDetail
~~~~~~~~~~~~~~~~~~~~~~~
CategoryInfo : NotSpecified: (:) [Get-AzureADTenantDetail], ApiException
FullyQualifiedErrorId : Microsoft.Open.AzureAD16.Client.ApiException,Microsoft.Open.AzureAD16.PowerShell.GetTenantDetails
Комментарии:
1. Вы предоставили своему приложению разрешение api на подключение в качестве приложения от имени организации ? … У меня достаточно другой сценарий, поэтому я не буду публиковать его в качестве ответа по этой причине, когда я подключаюсь как сам (пользователь) или субъект-служба и оттуда создаю токен AAD. Я использую исключительно
https://graph.windows.net
вместе с-AadAccessToken
ними . Я никогда не пробовал работать с клиентом / секретом приложения, но я вообще не использую эту-MsAccessToken
часть.2. Спасибо за повтор да, я добавил права : «Пользователь.Читать. Все»,»Каталог. Чтение и запись. Все»,»Пользователь.ReadWrite. Все»,»Отчеты.Читайте. Все», «Записи вызовов.Прочитайте. Все», «Звонки. Доступ к средствам массовой информации. Все»,»Домен. Чтение и запись. Все»,»application_access»,»application_access_custom_sba_appliance»,»Каталог приложений. Чтение и запись. Все»»Группа. ReadWrite.Все». При использовании этой команды я получаю ту же проблему : «Connect-AzureAD-AccountId «user@company.com» -AadAccessToken $ADTokenResponse.access_token»