public static GraphServiceClient GetGraphServiceClient(ADDAppConnectionDetails connection) { if (confidentialClientApp == null) { confidentialClientApp = ConfidentialClientApplicationBuilder .Create(connection.ApplicationId) .WithAuthority(connection.Authority) .WithClientSecret(connection.Password) .Build(); } GraphServiceClient graphClient = new GraphServiceClient( "https://graph.microsoft.com/v1.0", new DelegateAuthenticationProvider( async(requestMessage) => { var token = await GetTokenForApplicationAsync(); requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", token); })); return(graphClient); }
public static Graph GetConnection(ADDAppConnectionDetails connection) { var graphClient = AzureActiveDirectory.GetGraphServiceClient(connection); return(new Graph(graphClient)); }