Доступ к OneDrive делает c из Личного кабинета или только одного пользователя в Бизнес аккаунте через API - PullRequest
0 голосов
/ 11 февраля 2020

Я могу получить доступ к элементам OneDrive всех пользователей в бизнес-аккаунте Office 365, используя бесплатную пробную версию, созданную по этой ссылке.

https://www.microsoft.com/en-in/microsoft-365/business/office-365-enterprise-e3-business-software?rtc=1&activetab=pivot%3aoverviewtab

Однако , чтобы заставить его работать, мне нужно было дать моему приложению разрешение ниже, что в конечном итоге позволяет этому приложению получать доступ к элементам OneDrive всех пользователей этого арендатора из-за этих разрешений.

File.Read. Все -> Делегат

File.Read.All -> Приложение

User.Read -> Делегат

User.Read.All -> Делегат

Site.Read.All -> Делегат

Теперь мне необходимо получить доступ к документу OneDrive только один пользователь из этого арендатора и заблокировать приложение от доступа к документам от других пользователей или доступа к документу любой личной учетной записи (@ hotmail.com / @ live.com).

Пожалуйста, дайте мне знать, если есть любым способом или в случае, если я делаю что-то не так с приложением, которое я зарегистрировал.

A пропустил тот же вопрос, но бот велел задать azure команде в stackoverflow https://github.com/OneDrive/onedrive-api-docs/issues/1219

Спасибо за любую помощь.

1 Ответ

1 голос
/ 11 февраля 2020

Во-первых, вам необходимо понять различия между разрешением приложения и разрешением делегата.

Разрешение приложения означает «Только приложение», приложение действует как пользователь, но вход пользователя отсутствует.

Разрешение делегирования означает приложение + пользователь, пользователю необходимо будет войти в приложение и получить доступ к ресурсам.

Поэтому, исходя из предоставленных вами разрешений, я не могу сказать, требует ли ваше приложение входа пользователя в. Если да, разрешения делегирования вступят в силу. На основании делегированных разрешений , Files.Read.All позволяет приложению читать все файлы, к которым имеет доступ зарегистрированный пользователь. Если вошедший в систему пользователь может получить доступ к документу других пользователей, то и ваше приложение может получить к ним доступ. Поэтому, если вы управляете разрешениями доступа для пользователя в OneDrive или SharePoint, ваше приложение с этим вошедшим пользователем будет иметь те же разрешения.

Если вашему приложению не требуется зарегистрированный пользователь, разрешения приложения будут эффект в этом случае. На основе Разрешения приложения , Files.Read.All позволяет приложению читать все файлы во всех семействах сайтов без входа в систему. Таким образом, этот сценарий не соответствует вашим потребностям.

...