Доступ к файлам на Диске с общим доступом по ссылке с помощью ключей ресурсов

Вы можете делиться файлами и папками Google Диска с другими пользователями через интерфейс Drive UI или API Google Диска . При публикации через Drive вы можете контролировать, смогут ли пользователи редактировать, комментировать или только открывать файл.

Ключ ресурса помогает защитить ваш файл от несанкционированного доступа. Ключ ресурса — это дополнительный параметр, который передаётся для доступа пользователей к определённым файлам, к которым предоставлен доступ по ссылке. Пользователи, которые ранее не просматривали файл, должны предоставить ключ ресурса для получения доступа. Тем, кто недавно просматривал файл или имеет прямой доступ, ключ ресурса не нужен.

Файл на Диске, доступ к которому предоставлен по ссылке, могут обнаружить только пользователи, имеющие доступ к нему в соответствии с permissions type=user или type=group . Запросы от пользователей, имеющих доступ к этим файлам, предоставленным по ссылке, только в соответствии с разрешением type=domain или type=anyone , могут потребовать ключ ресурса.

Дополнительные сведения о разрешениях см. в разделе Общий доступ к файлам, папкам и дискам . Полный список ролей и операций, разрешённых каждой из них, см. в разделе Роли и разрешения .

Прочитать ключ ресурса из файла

API Диска возвращает ключ ресурса файла в доступном только для чтения поле resourceKey ресурса files .

Если файл является ярлыком Диска , ключ ресурса для целевого ярлыка возвращается в поле shortcutDetails.targetResourceKey , доступном только для чтения.

Поля в ресурсе files , возвращающие URL-адреса, такие как exportLinks , webContentLink и webViewLink , также включают resourceKey . Клиенты, интегрированные с пользовательским интерфейсом Диска, также могут использовать resourceKeys в параметре state . Подробнее см. в разделе Загрузка и экспорт файлов .

Установите ключ ресурса в запросе

Ключи ресурсов для любых файлов, на которые ссылаются запросы к API Drive, задаются в HTTP-заголовке X-Goog-Drive-Resource-Keys .

Запросы к API Drive могут указывать один или несколько ключей ресурсов с HTTP-заголовком X-Goog-Drive-Resource-Keys .

Синтаксис

Пара идентификатора файла и ключа ресурса указывается в заголовке с помощью косой черты ( / ). Заголовок формируется путём объединения всех пар идентификатора файла и ключа ресурса с помощью запятых ( , ).

Например, рассмотрим запрос на перемещение файла fileId1 из папки fileId2 в папку fileId3 . Предположим, что ключи ресурсов для этих трёх файлов — resourceKey1 , resourceKey2 и resourceKey3 соответственно. Заголовок, сформированный из этих значений с использованием косой черты и запятой в качестве разделителей, выглядит следующим образом:

    X-Goog-Drive-Resource-Keys: fileId1/resourceKey1,fileId2/resourceKey2,fileId3/resourceKey3