J'essaie d'utiliser Microsoft Graph et je suis un peu perdu ici. J'utilise ADAL pour authentifier mon application (app id + secret) via la méthode AuthenticationContext.AcquireTokenAsync. Le code ressemble à ceci:Microsoft Graph: comment faire en sorte que tous les groupes réutilisent le jeton généré via ADAL
AuthenticationContext AuthContext = new AuthenticationContext(Authority);
ClientCredential ClientCredential = new ClientCredential(ClientId, AppKey);
var result = await AuthContext.AcquireTokenAsync(
"https://graph.windows.net",
ClientCredential);
Maintenant, si je réutiliser le jeton avec Azure graphique, je peux récupérer tous les groupes en utilisant ce code:
var url = $"https://graph.windows.net/myorganization/groups?api-version=1.6";
var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", resultAccessToken);
var response = await client.GetAsync(url);
if (response.Content != null) {
Console.WriteLine(await response.Content.ReadAsStringAsync());
}
Selon les docs, je utiliser la nouvelle API Microsoft Graph, mais je vais avoir des problèmes lorsque je tente d'utiliser le code suivant:
var authenticationProvider = new DelegateAuthenticationProvider(
req.Headers.Authorization = new AuthenticationHeaderValue("bearer",
resultAccessToken.AccessToken);
return Task.CompletedTask;
});
var graph = new GraphServiceClient(authenticationProvider);
var groups = await graph.Groups
.Request()
.GetAsync();
Chaque fois que je lance, je finissent par obtenir l'exception suivante:
Exception non gérée: System.AggregateException: une ou plusieurs erreurs se sont produites. ---> Microsoft.Graph.ServiceException: Code: InvalidAuthenticationToken Message: Échec de la validation du jeton d'accès.
Il est évident qu'il me manque quelque chose ici, mais quoi? (btw, j'ai réussi à tout faire fonctionner avec les bibliothèques MSAL, mais dans ce cas, j'ai vraiment besoin d'avoir mon composant intégré avec d'autres qui utilisent ADAL),
Merci.
Luis
Merci Shawn! Merde ... erreur stupide. –