Выполняя приведенный ниже код и пытаясь получить значение из Azure AD с помощью учетной записи Runbook службы автоматизации, выдает ошибку отказано в разрешении. Я следил за этими шаги, по-прежнему не могу получить результат. пожалуйста, дайте мне знать, если кто-то столкнется с подобной проблемой или знает, как ее решить
Код:
$connectionName = "AzureRunAsConnection"
# Get the Service Principal connection details for the Connection name
$servicePrincipalConnection = Get-AutomationConnection -Name $connectionName
# Logging in to Azure AD with Service Principal
"Logging in to Azure AD..."
Connect-AzureAD -TenantId $servicePrincipalConnection.TenantId `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
"List Tenant Org Details:"
Get-AzureADTenantDetail | Select DisplayName, Street, PostalCode, City, CountryLetterCode
"Member Account Synced Count:"
(Get-AzureADUser -All $true -Filter "userType eq 'Member' and accountEnabled eq true" | Where-Object {$_.DirSyncEnabled -eq $true}).Count
"Disabled Users Count:"
(Get-AzureADUser -All $true -Filter 'accountEnabled eq false').Count
"Guest User Count:"
(Get-AzureADUser -All $true -Filter "userType eq 'Guest'").Count
"Cloud Only Account Count:"
(Get-AzureADUser -All $true -Filter "userType eq 'Member'" | Where-Object {$_.userPrincipalName -like "*onmicrosoft.com"}).Count
Ошибка:
Get-AzureADUser: произошла ошибка при выполнении GetUsers. Код: Authorization_RequestDenied. Сообщение: недостаточно прав для завершения операции. RequestId: DateTimeStamp: пт, 26 июня 2020 г., 04:07:45 GMT HttpStatusCode: Forbidden HttpStatusDescription: Forbidden HttpResponseStatus: Completed
В строке: 21 символ: 2
- (Get-AzureADUser -All $ true -Filter userType eq 'Guest'). Подсчет
-
+ CategoryInfo : NotSpecified: (:) [Get-AzureADUser], ApiException + FullyQualifiedErrorId : Microsoft.Open.AzureAD16.Client.ApiException,Microsoft.Open.AzureAD16.PowerShell.GetUser
Directory.Read.All
). Если вы уже добавили разрешение, не забудьте дать на это согласие администратора. И, пожалуйста, откройте другое окно PowerShell, чтобы повторно подключиться к субъекту службы, а затем попробуйте выполнить командуGet-AzureADUser
, потому что, возможно, в окне PowerShell возникла проблема с кешированием. - person Hury Shen   schedule 26.06.2020