0

Anforderung: Wir möchten die Gruppen von einem Benutzer über Microsoft Graph API mit der folgenden Anforderung abfragen:Microsoft Graph API erhalten Gruppen für Benutzerberechtigungen Fehler gibt

https://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/user_getmembergroups

In unserem Fall ist die Antwort sieht wie folgt aus:

{ 
    "error": { 
    "code": "Authorization_RequestDenied", 
    "message": "Insufficient privileges to complete the operation.", 
    "innerError": { 
     "request-id": "a230a67e-8ef1-4f88-aa19-2c5b983c3de4", 
     "date": "2017-01-04T16:29:55" 
    } 
    } 
}

(Hinweis: die GET https://graph.microsoft.com/v1.0/me/ funktioniert gut und gibt die Anwenderdaten)

{ 
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity", 
    "id": "e23976a1-8bd9-4cca-a410-e095d2c2022d", 
    "businessPhones": [], 
    "displayName": "XXXX Vad", 
    "givenName": "XXXX", 
    "jobTitle": null, 
    "mail": null, 
    "mobilePhone": null, 
    "officeLocation": null, 
    "preferredLanguage": null, 
    "surname": "Vad", 
    "userPrincipalName": "XXXX.vad_outlook.com#EXT#@XXXXvadoutlook.onmicrosoft.com" 
} 

Umwelt:

  • Anwendung erstellt auf apps.dev.microsoft.com mit den folgenden Parametern: o Anwendungs-ID: 412386c3-8fa3-4000-9039-748111407XXX o delegierte Berechtigungen: [ User.Read]
  • Diese Anwendung ist sichtbar auf 'Azure Portal/AAD/Enterprise-Anwendungen' und der Benutzer mit einer Gruppe 'BASIC' auf diese Anwendung hinzugefügt werden

Ein Beispiel für einen Zugriffstoken von AAD erhalten:

{ 
    "aud": "https://graph.microsoft.com", 
    "iss": "https://sts.windows.net/b9df6a2d-9150-45f9-abf0-9c30f9e527c7/", 
    "iat": 1483548390, 
    "nbf": 1483548390, 
    "exp": 1483552290, 
    "acr": "1", 
    "aio": "AQABAAEAAADRNYRQ3dhRSrm-4K-adpCJhEVX2WEl4aboghl6AXaqOVcbaQPl1yYg1X1D2r4cNxBYmPvUiTKE9bB6wwpNSBKeD2OZXhrzdE3FPddCzbaTo84X8aSoKFaAt2vysYSv1HdChNXBPbfrVlA6YBuSwVwEIAA", 
    "altsecid": "1:live.com:00037FFEC5917401", 
    "amr": [ 
    "pwd" 
    ], 
    "app_displayname": "XXX test", 
    "appid": "412386c3-8fa3-4000-9039-748111407XXX", 
    "appidacr": "0", 
    "email": "[email protected]", 
    "family_name": "Vad", 
    "given_name": "XXXX", 
    "idp": "live.com", 
    "ipaddr": "165.225.80.95", 
    "name": "XXXX Vad", 
    "oid": "e23976a1-8bd9-4cca-a410-e095d2c20XXX", 
    "platf": "3", 
    "puid": "10037FFE9D51DXXX", 
    "scp": "User.Read", 
    "sub": "sCDfsIUynhm4GdgPIe8hYguyNbbc7IBjZeKLd1UDXXX", 
    "tid": "b9df6a2d-9150-45f9-abf0-9c30f9e52XXX", 
    "unique_name": "live.com#[email protected]", 
    "ver": "1.0" 
} 

Was ich tue, falsch oder was fehlt ist? Jede Hilfe wird geschätzt.

+0

So haben Sie die Berechtigung Benutzer zu lesen, aber ich denke, das bedeutet nicht, Sie Gruppen lesen kann? – juunas

+0

Ja, ich habe User.READ unter apps.dev.microsoft zu meiner App hinzugefügt und verwende dieselbe appId, um das Token abzurufen (siehe oben). Obwohl der "aud" -Anspruch nicht meine App-URL ist ... –

+0

Der aud-Anspruch sagt, wer der Token ist, also nichts falsch daran. Sie benötigen wahrscheinlich eine andere Erlaubnis. – juunas

Antwort

Verwandte Themen