Разрешения приложения Microsoft Graph Outlook только для определенного почтового ящика
Microsoft Graph использует разрешения приложений для фоновых служб. Для API Outlook разрешение приложения Mail.ReadWrite предоставляет доступ ко всем почтовым ящикам.
введите описание изображения здесь
Есть ли способ ограничить доступ к определенному почтовому ящику?
https://developer.microsoft.com/en-us/graph/docs/concepts/permissions_reference
2 ответа
Нет, вы должны использовать делегированный доступ в этом экземпляре и грант Mail.ReadWrite.Shared, который предоставит доступ к почтовому ящику владельца и любому из почтовых ящиков, к которым предоставлен общий доступ этим пользователям (например, им был делегирован доступ).
Я согласен, что то, о чем вы говорите, было бы хорошей возможностью, позволяющей отказаться от разрешений для приложений для определенных почтовых ящиков / пользователей и т. Д., Это требование, которое появляется, но возможности сделать это не существует. Один из способов смягчить это с помощью логики на стороне сервера, например, заставить приложение проверять группу перед доступом к почтовым ящикам и т. Д. И убедиться, что аудит включен, чтобы вы могли поймать любое злонамеренное использование токенов и учетных данных.
Согласно Microsoft Docs, теперь это возможно.
Некоторые приложения вызывают Microsoft Graph, используя свою личность, а не от имени пользователя. Обычно это фоновые службы или приложения-демоны, которые работают на сервере без присутствия вошедшего в систему пользователя. Эти приложения используют поток предоставления учетных данных клиента OAuth 2.0 для проверки подлинности и настроены с разрешениями приложений, которые позволяют таким приложениям получать доступ ко всем почтовым ящикам в организации в Exchange Online. Например, разрешение приложения Mail.Read позволяет приложениям читать почту во всех почтовых ящиках без вошедшего в систему пользователя.
Администраторы, которые хотят ограничить доступ приложения к определенному набору почтовых ящиков, могут использовать командлет New-ApplicationAccessPolicy PowerShell для настройки управления доступом.