Доступ к общим файлам OneDrive через Microsoft Graph? - PullRequest
0 голосов
/ 20 июня 2019

У меня есть корпоративная учетная запись, настроенная с помощью OneDrive. У меня есть фиктивная (прокси?) Учетная запись, у которой нет собственного OneDrive. (Я намеренно хочу, чтобы у этой учетной записи было очень мало привилегий - она ​​настроена ТОЛЬКО как читатель.) Я поделился папкой из корпоративной учетной записи с фиктивной учетной записью. Я хотел бы использовать Microsoft Graph, используя фиктивную учетную запись для чтения файлов, которыми с ним поделились. Как бы я пошел по этому поводу? Каковы соответствующие звонки?

Когда я пытаюсь "/v1.0/me/drive/sharedWithMe", я получаю "У вас нет доступа к созданию этого личного сайта или у вас нет действующей лицензии". Я действительно не хочу тратить впустую лицензию Office 365 на эту фиктивную учетную запись, но это единственный способ? Возможно ли это сделать через маршрут SharePoint? Если так, то как? Есть ли другой, лучший способ сделать то, что я пытаюсь достичь?

Любая помощь будет высоко ценится!

Ответы [ 2 ]

0 голосов
/ 24 июня 2019

ОК, как объяснил Брэд, "/ я" не работает.Тем не менее, я смог заставить это работать.Изначально у меня была проблема с областями действия, но как только я разобрался с этим, я использовал запросы типа https://graph.microsoft.com/v1.0/drives/{drive-id}/root:/{folder-path}:/children и ... проблема решена!

0 голосов
/ 21 июня 2019

Проблема в том, что /me пытается найти персональный сайт для звонящего, и поэтому, если у него нет подписки, запрос не будет выполнен.

Возможно ли, чтобы вы знали общий элемент заранее? Я думаю, это действительно единственный способ заставить этот сценарий работать. В этом случае вы можете выполнить одно из следующих действий.

Использовать идентификаторы API
Как владелец данных, сделайте запрос API, чтобы получить driveId и id элемента. Затем в качестве фиктивного аккаунта сделайте запрос, подобный следующему:

https://graph.microsoft.com/v1.0/drives/driveId/items/id

Использовать URL-адрес SharePoint
В этом случае, скажем, URL-адрес SharePoint для папки был https://tenant-my.sharepoint.com/personal/user_tenant_com/Documents/Folder, вы могли бы кодировать его как идентификатор общего ресурса и сделать запрос, подобный следующему, для доступа к нему:

https://graph.microsoft.com/v1.0/shares/u!aHR0cHM6Ly90ZW5hbnQtbXkuc2hhcmVwb2ludC5jb20vcGVyc29uYWwvdXNlcl90ZW5hbnRfY29tL0RvY3VtZW50cy9Gb2xkZXI/driveItem

...