Получение ошибки «Требуется одобрение администратора» при вызове PowerBI REST API - PullRequest
0 голосов
/ 15 июня 2019

Я хочу извлечь историю обновления набора данных для набора данных. Я использую REST API в скрипте PowerShell. Я зарегистрировал собственное приложение и предоставил все разрешения, но получил сообщение об ошибке «Требуется одобрение администратора». Какое утверждение администратора необходимо?

При запуске приведенного выше кода появляется ошибка

Требуется одобрение администратора

требуется разрешение для доступа к ресурсам в вашей организации, Администратор может предоставить. Пожалуйста, попросите администратора дать разрешение на это приложение прежде чем вы сможете использовать его.

Есть учетная запись администратора? Войти с этим аккаунтом Вернуться к заявление без предоставления согласия "Примечание: я не являюсь администратором моего облако

Пожалуйста, помогите мне, что нужно сделать, чтобы устранить эту ошибку. Кроме того, какое разрешение требуется и как мой администратор может предоставить доступ?

$clientId = "NativeAppClientId"

# Calls the Active Directory Authentication Library (ADAL) to authenticate against AAD
function GetAuthToken {
    if (-not (Get-Module AzureRm.Profile)) {
        Import-Module AzureRm.Profile
    }

    $redirectUri = "urn:ietf:wg:oauth:2.0:oob" 
    $resourceAppIdURI = "https://analysis.windows.net/powerbi/api"
    $authority = "https://login.microsoftonline.com/common/oauth2/authorize";
    $authContext = New-Object "Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext" -ArgumentList $authority
    $authResult = $authContext.AcquireToken($resourceAppIdURI, $clientId, $redirectUri, "Auto")
    return $authResult
}

# Get the auth token from AAD
$token = GetAuthToken
# Building Rest API header with authorization token
$authHeader = @{
    'Content-Type'  = 'application/json'
    'Authorization' = $token.CreateAuthorizationHeader()
}
# properly format groups path
$groupsPath = ""
if ($groupID -eq "me") {
    $groupsPath = "myorg"
} else {
    $groupsPath = "myorg/groups/$groupID"
}

# Check the refresh history
$uri = "https://api.powerbi.com/v1.0/$groupsPath/datasets/$datasetID/refreshes"
Invoke-RestMethod -Uri $uri -Headers $authHeader -Method GET -Verbose
...