Я пытаюсь использовать API MS Graph для доступа к событиям календаря пользователя, но при попытке получить токен доступа для моего приложения, которое я зарегистрировал в Azure,
Я получаю следующую ошибку:
Ошибка: область действия https://graph.microsoft.com/Calendars.Read недействительна.
Ниже мой код:
string token = string.Empty;
IConfidentialClientApplication app;
app = ConfidentialClientApplicationBuilder.Create("ClientID")
.WithTenantId("TenantID")
.WithClientSecret("ClientSecret")
.Build();
string[] scopes = new string[] { "https://graph.microsoft.com/Calendars.Read" };
AuthenticationResult result = null;
try
{
result = await app.AcquireTokenForClient(scopes).ExecuteAsync();
token = result.AccessToken;
var graphServiceClient = new GraphServiceClient(new DelegateAuthenticationProvider((requestMessage) => {
requestMessage
.Headers
.Authorization = new AuthenticationHeaderValue("bearer", token);
return Task.FromResult(0);
}));
var events = await graphServiceClient.Users["user1@onTestMicrosoft.com"].Events.Request().GetAsync();
}
catch (MsalServiceException ex)
{
// Case when ex.Message contains:
// AADSTS70011 Invalid scope. The scope has to be of the form "https://resourceUrl/.default"
// Mitigation: change the scope to be as expected
}
Что я здесь не так делаю?Я уже предоставил разрешение на Calendars.Read на портале Azure при регистрации моего приложения там: https://www.screencast.com/t/jTjnB4SX5I