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


Перечисление разрешений на общий доступ для элемента driveItem

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

Список действующих разрешений на общий доступ к объекту driveItem.

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

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

Доступ к разрешениями совместного доступа

Коллекция разрешений включает потенциально конфиденциальные данные и может быть доступна не для каждого отправителя вызовов.

  • Для владельца элемента возвращаются все разрешения совместного доступа. Это относится и к совладельцам.
  • Если вызов отправляет не владелец, возвращаются только те разрешения, которые относятся к отправителю вызова.
  • Свойства разрешений совместного доступа, содержащие секреты (например, shareId и webUrl), возвращаются только для тех пользователей, которые могут создать такое разрешение.

Разрешения

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

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

HTTP-запрос

GET /drives/{drive-id}/items/{item-id}/permissions
GET /groups/{group-id}/drive/items/{item-id}/permissions
GET /me/drive/items/{item-id}/permissions
GET /me/drive/root:/{path}:/permissions
GET /sites/{siteId}/drive/items/{itemId}/permissions
GET /users/{userId}/drive/items/{itemId}/permissions

Необязательные параметры запросов

Этот метод поддерживает $selectпараметры запроса OData для настройки ответа.

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

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.
if-none-match Строка. Если указан заголовок запроса, а предоставленный тег etag совпадает с текущим тегом etag элемента, то возвращается ответ HTTP 304 Not Modified.

Ответ

В случае успешного выполнения этот метод возвращает код ответа 200 OK и коллекцию ресурсов Permission в тексте ответа.

Действующие разрешения совместного доступа для элемента DriveItem можно получить из двух источников:

  • разрешения совместного доступа, примененные непосредственно к самому элементу DriveItem;
  • разрешения на общий доступ, унаследованные от предков элемента DriveItem.

Абоненты могут распознать унаследованное разрешение, проверив свойство inheritedFrom. Это свойство — ресурс itemReference, отсылающий к предшествующему элементу, от которого унаследовано разрешение.

Пример

В этом примере показано, как получить набор разрешений для элемента в объекте drive пользователя, выполнившего вход в систему.

GET /me/drive/items/{item-id}/permissions

Отклик

Этот пример ответа включает три разрешения. Первое разрешение представляет собой ссылку совместного доступа с разрешениями на изменение, второе — явное разрешение для пользователя с именем John, которое унаследовано от родительской папки, а третье разрешение — это ссылка совместного доступа с правами на чтение и запись, созданная приложением.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "value": [
    {
      "id": "1",
      "roles": ["write"],
      "link": {
        "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
        "type": "edit"
      }
    },
    {
      "id": "2",
      "@deprecated.GrantedTo": "GrantedTo has been deprecated. Refer to GrantedToV2",
      "roles": ["write"],
      "grantedTo": {
        "user": {
          "id": "5D33DD65C6932946",
          "displayName": "Robin Danielsen"
        }
      },
      "grantedToV2": {
        "user": {
          "id": "5D33DD65C6932946",
          "displayName": "Robin Danielsen"
        },
        "siteUser": {
          "id": "1",
          "displayName": "Robin Danielsen",
          "loginName": "Robin Danielsen"
        }
      },
      "inheritedFrom": {
        "driveId": "1234567890ABD",
        "id": "1234567890ABC!123",
        "path": "/drive/root:/Documents" }
    },
    {
      "id": "3",
      "roles": ["write"],
      "link": {
        "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
        "type": "edit",
        "application": {
          "id": "12345",
          "displayName": "Contoso Time Manager"
        }
      }
    }
  ]
}

Замечания

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

Ответы с ошибками

Дополнительные сведения о том, как возвращаются ошибки, см. в статье Отклики ошибок.