Разрешения для API OneDrive

В случае OneDrive и SharePoint можно затребовать несколько типов настроенных разрешений, контролирующих доступ приложений к ресурсам. Входя в приложение, пользователь (иногда администратор) должен согласиться на предоставление этих разрешений. Если согласие предоставлено, приложение получает доступ к запрашиваемым ресурсам и интерфейсам API. Для приложений, не предусматривающих вход пользователя, администратор может заранее дать согласие при установке приложения или во время регистрации.

Дополнительные сведения о полном наборе разрешений Microsoft Graph см. в статье Справочник по разрешениям Microsoft Graph.

Разрешения для файлов

Делегированные разрешения

Разрешение Отображаемая строка Описание Необходимость в согласии администратора
Files.Read Чтение файлов пользователей Позволяет приложению считывать файлы вошедшего пользователя. Нет
Files.Read.All Чтение всех файлов, доступных пользователю Позволяет приложению считывать все файлы, доступные вошедшему пользователю. Нет
Files.ReadWrite Полный доступ к файлам пользователя Позволяет приложению считывать, создавать, обновлять и удалять файлы вошедшего пользователя. Нет
Files.ReadWrite.All Полный доступ ко всем файлам, доступным пользователю Позволяет приложению считывать, создавать, обновлять и удалять все файлы, доступные вошедшему пользователю. Нет
Files.ReadWrite.AppFolder Полный доступ к папке приложения (предварительная версия) Позволяет приложению считывать, создавать, обновлять и удалять файлы в папке приложения (предварительная версия). Нет
Files.Read.Selected Чтение файлов, выбранных пользователем Ограниченная поддержка в Microsoft Graph (см. замечания)
(предварительная версия) Позволяет приложению считывать файлы, которые выбирает пользователь. После того как пользователь выберет файл, приложение имеет доступ в течение нескольких часов.
Нет
Files.ReadWrite.Selected Чтение и запись файлов, выбранных пользователем Ограниченная поддержка в Microsoft Graph (см. замечания)
(предварительная версия) Позволяет приложению считывать и записывать файлы, которые выбирает пользователь. После того как пользователь выберет файл, приложение имеет доступ в течение нескольких часов.
Нет

Разрешения приложений

Разрешение Отображаемая строка Описание Необходимость в согласии администратора
Files.Read.All Чтение файлов во всех семействах веб-сайтов Позволяет приложению считывать все файлы во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да
Files.ReadWrite.All Чтение и запись файлов во всех семействах веб-сайтов Позволяет приложению читать, создавать, изменять и удалять все файлы во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да

Заметки

Делегированные разрешения Files.Read, Files.ReadWrite, Files.Read.All и Files.ReadWrite.All действительны как для личных учетных записей Майкрософт, так и для рабочих или учебных учетных записей. Обратите внимание, что для личных учетных записей Files.Read и Files.ReadWrite также предоставляют доступ к файлам, к которым предоставлен доступ пользователю, выполнившего вход.

Делегированные разрешения Files.Read.Selected и Files.ReadWrite.Selected действительны только для рабочих или учебных учетных записей и предоставляются только для работы с обработчиками файлов Office 365 (версия 1.0). Их не следует использовать для прямого вызова API Microsoft Graph.

Делегированное разрешение Files.ReadWrite.AppFolder действует только в личных учетных записях и используется для доступа к специальной папке App Root с помощью API Microsoft Graph для OneDrive (получение специальной папки).

Примеры использования

Делегированные разрешения

  • Files.Read: чтение файлов в OneDrive вошедшего пользователя (GET /me/drive/root/children).
  • Files.Read.All: чтение файлов, доступ к которым предоставлен вошедшему пользователю (GET /me/drive/root/sharedWithMe).
  • Files.ReadWrite: запись в файл из OneDrive вошедшего пользователя (PUT /me/drive/root/children/filename.txt/content).
  • Files.ReadWrite.All: запись в файл, доступ к которому предоставлен пользователю (PUT /users/rgregg@contoso.com/drive/root/children/file.txt/content).
  • Files.ReadWrite.AppFolder: запись файлов в папке приложения в OneDrive (PUT /me/drive/special/approot/children/file.txt/content).

Разрешения для сайтов

Делегированные разрешения

Разрешение Отображаемая строка Описание Необходимость в согласии администратора
Sites.Read.All Чтение элементов во всех семействах веб-сайтов Позволяет приложению считывать документы и элементы списков во всех семействах веб-сайтов от имени пользователя, выполнившего вход в систему. Нет
Sites.ReadWrite.All Чтение и запись элементов во всех семействах веб-сайтов Позволяет приложению редактировать или удалять документы и элементы списков во всех семействах веб-сайтов от имени пользователя, выполнившего вход в систему. Нет
Sites.Manage.All Создание, редактирование и удаление элементов и списков во всех семействах веб-сайтов Позволяет приложению создавать списки, документы и элементы списков, а также управлять ими во всех семействах веб-сайтов от имени пользователя, выполнившего вход в систему. Нет
Sites.FullControl.All Полный контроль над всеми семействами веб-сайтов Разрешает приложению полный контроль над сайтами SharePoint во всех семействах веб-сайтов от имени пользователя, выполнившего вход в систему. Да

Разрешения приложений

Разрешение Отображаемая строка Описание Необходимость в согласии администратора
Sites.Read.All Чтение элементов во всех семействах веб-сайтов Позволяет приложению считывать документы и элементы списка во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да
Sites.ReadWrite.All Чтение и запись элементов во всех семействах веб-сайтов Позволяет приложению создавать, считывать, изменять и удалять документы и элементы списков во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да
Sites.Manage.All Полный контроль над всеми семействами веб-сайтов Разрешает приложению создавать списки, документы и элементы списков, а также управлять ими во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да
Sites.FullControl.All Создание, редактирование и удаление элементов и списков во всех семействах веб-сайтов Разрешает приложению полный контроль над сайтами SharePoint во всех семействах веб-сайтов без пользователя, выполнившего вход в систему. Да

Заметки

Разрешения сайтов действительны только для рабочих и учебных учетных записей.

Примеры использования

Делегированные разрешения

  • Sites.Read.All: чтение списков на корневом сайте SharePoint (GET /v1.0/sites/root/lists).
  • Sites.ReadWrite.All: создание элементов списка SharePoint (POST /v1.0/sites/root/lists/123/items).
  • Sites.Manage.All: добавление нового списка на сайт SharePoint (POST /v1.0/sites/root/lists).
  • Sites.FullControl.All: полный доступ к сайтам и спискам SharePoint.