Есть ли способ получить разрешения от общего файла - OneDrive? - PullRequest
2 голосов
/ 06 января 2020

Как получить сведения о разрешениях файлов , которыми я поделился в OneDrive с использованием GraphAPI?

Я попробовал следующий код, но значения разрешений равны нулю.

IDriveSharedWithMeCollectionPage driveItems = await graphClient.Me.Drive.SharedWithMe().Request(requestOptions)
            .WithUserAccount(ClaimsPrincipal.Current.ToGraphUserAccount())
            .GetAsync();

Есть ли какой-либо способ получить подробности разрешения, такие как чтение / запись или только чтение, используя GraphAPI из моих общих файлов?

Разрешения отображаются в OneDrive на Управление доступом опция, но как мне получить детали с помощью API? Можно ли получить эти данные с помощью такого API?

1 Ответ

1 голос
/ 06 января 2020

Я не пробовал, но я предполагаю, что разрешения указаны c для элемента диска, который вы можете получить только после его извлечения. Вы можете получить общий элемент, как показано ниже:

GraphServiceClient graphClient = new GraphServiceClient( authProvider );

var sharedWithMe = await graphClient.Me.Drive
    .SharedWithMe()
    .Request()
    .GetAsync();

и затем:

GraphServiceClient graphClient = new GraphServiceClient( authProvider );

var permissions = await graphClient.Me.Drive.Items["{item-id}"].Permissions
    .Request()
    .GetAsync();

Невозможно расширить отношение разрешений DriveItem как часть вызова для получения DriveItem или набора DriveItems. Вы должны получить прямой доступ к свойству permissions.

Эффективные разрешения на совместное использование DriveItem могут поступать из двух источников:

  • Разрешения на совместное использование, применяемые непосредственно к самому DriveItem.

  • Совместное использование разрешений, унаследованных от предков DriveItem.

Дополнительная ссылка:

https://docs.microsoft.com/en-us/graph/api/driveitem-list-permissions?view=graph-rest-1.0&tabs=http

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...