Я пытаюсь пройти проверку подлинности, чтобы использовать Outlook REST API для подписки на электронные письма Outlook через Push-подписку.Я использую эту документацию для справки: https://docs.microsoft.com/en-us/previous-versions/office/office-365-api/api/version-2.0/notify-rest-operations
Я создал приложение на portal.azure.com и предоставил необходимые разрешения для «Чтение почты пользователя» в API «Office 365 Exchange Online».
Предоставить Требуемое разрешение на чтение почты пользователя. Снимок экрана
Я использую следующий код для получения токена Bearer с помощью пакета nuget Microsoft.Identity.Client.Но я все еще не могу подписаться на API REST push-уведомлений Outlook и получаю 401 несанкционированную ошибку.
static async Task<AuthenticationResult> AuthorizeAsync(string clientId)
{
var authority = $"https://login.microsoftonline.com/{tenantName}.onmicrosoft.com";
var app = new PublicClientApplication(clientId, authority);
string[] scopes = new string[] { "Mail.Read" };
var accounts = await app.GetAccountsAsync();
AuthenticationResult authenticationResult = null;
if (accounts.Any())
{
authenticationResult = await app.AcquireTokenSilentAsync(scopes, accounts.FirstOrDefault());
}
else
{
try
{
var username = $"{Environment.UserName}@microsoft.com";
authenticationResult = await app.AcquireTokenByIntegratedWindowsAuthAsync(scopes, username);
}
Кто-нибудь работал над аналогичной проблемой для проверки подлинности и создания подписки на push-уведомления для получения Outlookэлектронные письма и может помочь пожалуйста?