Поделиться через


Создание разрешения на driveItem

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Создайте новый объект разрешений в driveItem.

Важно!

Этот API имеет следующие ограничения:

  • Для OneDrive для работы или учебы и SharePoint Online этот метод можно использовать только для создания нового разрешения приложения. Если вы хотите создать новое разрешение пользователя в driveItem, см. раздел Приглашение. Дополнительные сведения о разрешениях приложений см. в статье Обзор выбранных разрешений в OneDrive и SharePoint.
  • В SharePoint Embedded этот метод можно использовать только для создания разрешения sharePointGroup с доступом только для приложений. Невозможно создать разрешение на корневой элемент контейнера.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Files.ReadWrite Files.ReadWrite.All, Files.SelectedOperations.Selected, Sites.ReadWrite.All, Sites.FullControl.All, Sites.Manage.All, Sites.Selected, Lists.SelectedOperations.Selected, ListItems.SelectedOperations.Selected
Делегированные (личная учетная запись Майкрософт) Files.ReadWrite Files.ReadWrite.All
Приложение Files.ReadWrite.All Sites.FullControl.All, Sites.Manage.All, Sites.ReadWrite.All, Sites.Selected, Files.SelectedOperations.Selected, Lists.SelectedOperations.Selected, ListItems.SelectedOperations.Selected

Примечание.

SharePoint Embedded требует разрешения на FileStorageContainer.Selected доступ к содержимому контейнера. Это разрешение отличается от указанных ранее. В дополнение к разрешениям Microsoft Graph приложение должно иметь необходимые разрешения типа контейнера для вызова этого API. Дополнительные сведения см. в статье Проверка подлинности и авторизация SharePoint Embedded.

HTTP-запрос

POST /drives/{drive-id}/items/{item-id}/permissions
POST /groups/{group-id}/drive/items/{item-id}/permissions
POST /me/drive/items/{item-id}/permissions
POST /sites/{siteId}/drive/items/{itemId}/permissions
POST /users/{userId}/drive/items/{itemId}/permissions

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

В тексте запроса укажите представление объекта разрешения в формате JSON.

Важно!

  • Этот API принимает grantedToV2 в качестве входных данных только для объекта разрешений . Другие свойства, такие как grantedToIdentitiesV2 или нерекомендуемые grantedTo и grantedToIdentities не принимаются.
  • Для SharePoint Embedded при создании нового разрешения sharePointGroup текст запроса должен содержать id и displayNamesharePointGroup , на которые ссылается grantedToV2.siteGroup свойство . См . пример 2.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект разрешений в тексте ответа.

Примеры

Пример 1. Добавление разрешения приложения на driveItem в OneDrive или SharePoint Online

В следующем примере показано, как добавить writeразрешение для Contoso Time Manager Appприложения, определяемого с помощью 89ea5c94-7736-4e25-95ad-3fa95f62b66e, в объекте driveItem, определяемом с помощью 01V4EPHZNV2OJQJNBPWNCKDTXCQ5TSVBJU.b!s8RqPCGh0ESQS2EYnKM0IKS3lM7GxjdAviiob7oc5pXv_0LiL-62Qq3IXyrXnEop

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/beta/drives/b!s8RqPCGh0ESQS2EYnKM0IKS3lM7GxjdAviiob7oc5pXv_0LiL-62Qq3IXyrXnEop/items/01V4EPHZNV2OJQJNBPWNCKDTXCQ5TSVBJU/permissions
Content-Type: application/json

{
  "grantedToV2": {
    "application": {
      "id": "89ea5c94-7736-4e25-95ad-3fa95f62b66e"
    }
  },
  "roles": ["write"]
}

Отклик

Ниже показан пример отклика.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "aTowaS50fG1zLnNwLmV4dHw4OWVhNWM5NC03NzM2LTRlMjUtOTVhZC0zZmE5NWY2MmI2NmVAZDljZTBmYzEtNjFkOC00YTJlLWI1ZDMtMTg3NzBkZjA2NzJj",
  "roles": [
    "write"
  ],
  "grantedTo": {
    "application": {
      "id": "89ea5c94-7736-4e25-95ad-3fa95f62b66e",
      "displayName": "Contoso Time Manager App"
    }
  },
  "grantedToV2": {
    "application": {
      "id": "89ea5c94-7736-4e25-95ad-3fa95f62b66e",
      "displayName": "Contoso Time Manager App"
    }
  }
}

Пример 2. Добавление разрешения группы SharePoint на объект driveItem в контейнере SharePoint Embedded

В следующем примере показано, как добавить writeразрешение для Internal CollaboratorssharePointGroup на объект driveItem, определенный 01V4EPHZNV2OJQJNBPWNCKDTXCQ5TSVBJU в файле SharePoint EmbeddedStorageContainer, определяемый .b!s8RqPCGh0ESQS2EYnKM0IKS3lM7GxjdAviiob7oc5pXv_0LiL-62Qq3IXyrXnEop

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/beta/drives/b!s8RqPCGh0ESQS2EYnKM0IKS3lM7GxjdAviiob7oc5pXv_0LiL-62Qq3IXyrXnEop/items/01V4EPHZNV2OJQJNBPWNCKDTXCQ5TSVBJU/permissions
Content-Type: application/json

{
  "grantedToV2": {
    "siteGroup": {
      "id": "10",
      "displayName": "Internal Collaborators"
    }
  },
  "roles": ["write"]
}

Отклик

Ниже приводится пример отклика.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "aTowaS50fG1zLnNwLmV4dHwxMEBkOWNlMGZjMS02MWQ4LTRhMmUtYjVkMy0xODc3MGRmMDY3MmM=",
  "roles": [
    "write"
  ],
  "grantedToV2": {
    "siteGroup": {
      "id": "10",
      "displayName": "Internal Collaborators"
    }
  },
  "grantedTo": {
    "siteGroup": {
      "id": "10",
      "displayName": "Internal Collaborators"
    }
  }
}