2017-06-01 3 views
0

Wie fordern Sie den User.ReadBasic.All-Bereich für ein Zugriffstoken für die Azure Graph-API an? Ich versuche, durch eine Anfrage anAzure AD Graph API - Ändern des Tokenbereichs in User.ReadBasic.All

machen

https://login.microsoftonline.com/[tenant]/oauth2/token

über die folgenden Parameter übergeben

  • client_id (aus der Anwendung in Azure)
  • grant_type = Passwort
  • Ressource = https://graph.windows.net
  • client_secret (aus der Anwendung in Azure)
  • Benutzername (Benutzername für autorisiertes Konto)
  • Passwort (Passwort für autorisiertes Konto)
  • scope = user.readbasic.all

jedoch die Token, das ich zurückbekomme, zeigt das Scope als "User.Read" an, was mir nur erlaubt, das Profil des Benutzers zu lesen, dessen Benutzername/Passwort ich in der Anfrage angegeben habe. Ich muss in der Lage sein, das Basisprofil eines beliebigen Benutzers mit diesem Token zu lesen.

Wenn ich mich mit meinem Konto beim Graph Explorer anmelde, kann ich jedes gewünschte Benutzerprofil lesen. Was senden sie, dass ich nicht bin?

Was fehlt mir hier ????

Antwort

2

Sie vermischen den V1- und V2-Endpunkt. In der V2 endpoint unterstützen wir eine Querystring von scope, mit der Sie die Bereiche, die Sie in Ihrem Access-Token zum Zeitpunkt der Token-Anfrage möchten, dynamisch bestimmen können.

Für den V1-Endpunkt müssen Sie jedoch vorab die Berechtigungen konfigurieren, die Sie für die APIs benötigen, die Sie aufrufen möchten.

Sie müssen zur Konfiguration Ihrer Anwendung gehen und die entsprechende Berechtigung für die AAD Graph API auswählen. Here is a screenshot davon aus dem Azure-Portal.

Verwandte Themen