Azure erhält Metriken – Problem „Authentifizierung fehlgeschlagen“

Azure erhält Metriken – Problem „Authentifizierung fehlgeschlagen“

Ich erstelle ein PowerShell-Skript, um Metriken von Azure abzurufen. Ich habe eine App-Registrierung mit API-Berechtigung für Insights-UserMetric.Read.All (Anwendungstyp). Außerdem ist dieser App auf Abonnementebene die Rolle „Monitoring Reader“ zugewiesen. Beim Ausführen eines Skripts erhalte ich die folgende Fehlermeldung:

{   "error": {     "code": "AuthenticationFailed",     "message": "Authentication failed."   } }

Ich habe versucht, die Rolle auf Mitwirkender zu erhöhen, nur um zu prüfen, ob ich nicht über ausreichende Berechtigungen verfüge, aber selbst mit der Rolle Mitwirkender erhalte ich denselben Fehler

Hier ist das Skript:

$ClientId = 'someClientId'
$ClientSecret = 'someClientSecret'
$Tenantid = 'someTenantId'

$TokenBody = @{
    Grant_Type = "client_credentials"
    Scope = "https://graph.microsoft.com/.default"
    Client_Id = $ClientId
    Client_Secret = $ClientSecret
}
$TokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$Tenantid/oauth2/v2.0/token" -Method POST -Body $TokenBody

$Headers = @{
    "Authorization" = "Bearer $($tokenResponse.access_token)"
    "Content-type" = "application/json"
}

$Uri = 'https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.EventHub/namespaces/$eventHub/providers/Microsoft.Insights/metrics?api-version=2018-01-01'

Invoke-RestMethod -Headers $Headers -Uri $Uri -Method GET

Ich bin für jede Art von Anleitung dankbar

Antwort1

Problem gelöst. Token-Teil behoben:

$TokenBody = @{
    Grant_Type = "client_credentials"
    Scope = "https://management.azure.com/.default"
    Client_Id = $ClientId
    Client_Secret = $ClientSecret
    Tenant_Id = $TenantId
}

verwandte Informationen