1

Ich habe eine .NET Web API, die ich verwende, um einige Interaktion mit Microsoft Graph und Azure AD zu tun. Wenn ich jedoch versuche, eine Erweiterung für den Benutzer zu erstellen, wird sie mit Zugriff verweigert zurückgegeben.Erstellen Sie benutzerdefinierte Erweiterung über Graph API mit Clientanmeldeinformationen auth

Ich weiß, es ist möglich, aus der Dokumentation here jedoch scheint es nicht für mich arbeiten.

Für die API verwende ich Client-Anmeldeinformationen. Meine Web-App authentifiziert sich also mit den Benutzeranmeldeinformationen für die API, und von der API zum Graphen verwendet sie den Client.

In meiner App auf Azure AD ist die Anwendungserlaubnis Read and Write Directory Data auf "true" festgelegt, da sie angibt, dass sie in der Dokumentation für eine Benutzererweiterung enthalten sein muss.

Ich weiß, dass mein Token gültig ist, da ich Daten damit abrufen kann.

Hier ist mein Code für das Abrufen:

private const string _createApprovalUrl = "https://graph.microsoft.com/beta/users/{0}/extensions"; 
    public static async Task<bool> CreateApprovalSystemSchema(string userId) 
    { 
     using(var client = new HttpClient()) 
     { 
      using(var req = new HttpRequestMessage(HttpMethod.Post, _createApprovalUrl)) 
      { 
       var token = await GetToken(); 
       req.Headers.Add("Authorization", string.Format("Bearer {0}", token)); 
       req.Headers.TryAddWithoutValidation("Content-Type", "application/json"); 
       var requestContent = JsonConvert.SerializeObject(new { extensionName = "<name>", id = "<id>", approvalLimit = "0" }); 
       req.Content = new StringContent(requestContent, Encoding.UTF8, "application/json"); 

       using(var response = await client.SendAsync(req)) 
       { 
        var content = await response.Content.ReadAsStringAsync(); 
        ApprovalSystemSchema schema = JsonConvert.DeserializeObject<ApprovalSystemSchema>(content); 
        if(schema.Id == null) 
        { 
         return false; 
        } 
        return true; 
       } 
      } 
     } 
    } 

Gibt es jemanden, eine Abhilfe für dieses haben kann, oder Informationen darüber, wann dies machbar sein wird? fehlende

Danke,

+0

Wir untersuchen und melden uns bei Ihnen. Danke, dass Sie dies gemeldet haben. –

Antwort

1

Wir haben einen Blick und es sieht aus wie Sie einen Bug/Codezeile haben. Sie scheinen zu machen diese genauen Anfrage:

POST https://graph.microsoft.com/beta/users/{0}/extensions 

Sehen aus wie Sie den Code fehlen die {0} mit einem tatsächlichen Benutzer-ID zu ersetzen. Bitte machen Sie das Problem und teilen Sie uns mit, ob Sie jetzt eine Erweiterung für den Benutzer erstellen können.

+0

Wusste, ich muss etwas Dummes verpasst haben. Vielen Dank :) – DaRoGa

Verwandte Themen