Я пытаюсь подключиться для обмена в Интернете и выполнения определенных операций с электронными письмами с использованием Microsoft Graph API 1.0, и все это делается в программе демона. Я использую рабочий процесс Client Credential для аутентификации, ниже приведен небольшой фрагмент кода
AuthenticationContext authenticationContext = new AuthenticationContext(string.Format(CultureInfo.InvariantCulture, azureEndPoint, tenant));
ClientCredential clientCredential = new ClientCredential(clientId, clientSecret);
AuthenticationResult authenticationResult = await authenticationContext.AcquireTokenAsync(resource, clientCredential);
Но для того, чтобы этот код возвращал маркер аутентификации, я должен получить Разрешения приложений для идентификатора приложения Azure для Microsoft API Graph API. Предостережение заключается в том, что если разрешение предоставлено, то у идентификатора приложения будет доступ для чтения электронных писем всех пользователей в организации, и по этой причине администратор арендатора строго отказался предоставить разрешение.
Я попытал счастья с рамками согласия, но это требует вмешательства пользователя для ввода его / ее идентификатора и пароля, что невозможно в случае программы-демона. Я прочитал несколько блогов, как показано ниже, но все они заканчивают тем, что вводили пароль идентификатора пользователя, чтобы добраться до URL перенаправления, который побеждает всю демоническую вещь https://blogs.msdn.microsoft.com/exchangedev/2015/01/21/building-daemon-or-service-apps-with-office-365-mail-calendar-and-contacts-apis-oauth2-client-credential-flow/
Можно ли как-нибудь предоставить доступ на чтение / запись к идентификатору приложения Azure для определенных идентификаторов электронной почты в клиенте? Или, альтернативно, какой-нибудь умный способ как-то попасть в почтовый ящик без вмешательства пользователя?
Заранее спасибо,
Вивек