#microsoft-graph-api #onedrive #microsoft-graph-files
#microsoft-graph-api #onedrive #microsoft-graph-files
Вопрос:
Как правильно определить права доступа к файлу в OneDrive при использовании MSGraph API? В частности, как я могу определить, может ли вызывающий абонент редактировать файл?
Я использовал API разрешений list и получаю коллекцию объектов разрешений. В документах указано, что:
Коллекция разрешений содержит потенциально конфиденциальную информацию и может быть доступна не для каждого вызывающего абонента.
- Для владельца элемента будут возвращены все разрешения на совместное использование. Сюда входят совладельцы.
- Для вызывающего абонента, не являющегося владельцем, возвращаются только разрешения общего доступа, которые применяются к вызывающему абоненту.
- Свойства разрешения общего доступа, содержащие секреты (например, ShareID и webUrl), возвращаются только для вызывающих абонентов, которые могут создать разрешение общего доступа.
Я попытался перечислить разрешения для элемента, который был предоставлен вызывающему абоненту, и в список, который я получил, включены grantedTo
записи для других пользователей, кроме вызывающего пользователя, несмотря на то, что говорится в документах. На самом деле, grantedTo
для пользователя, с которым я звонил, не было указано ни одной записи. В список также включена link
запись о разрешении. Могу ли я предположить, что запись относится к вызывающему пользователю?
Я не смог найти в документах ничего, что объясняет, как использовать список, чтобы узнать, имеет ли пользователь доступ на чтение или запись к файлу.
Должен ли я перебирать список и искать grantedBy
записи, соответствующие идентификатору текущего пользователя? Должен ли я также посмотреть на роли link
записей? Если есть такая запись с write
ролью, означает ли это, что я могу загрузить новую версию этого файла?
Комментарии:
1. Вы все еще ищете здесь помощи?
2. @Shiva-MSFTIdentity да, пожалуйста
3. @Shiva-MSFTIdentity у вас есть какая-либо информация, которая может помочь разобраться в этом? Спасибо!