Acessar arquivos do Drive compartilhados por link usando chaves de recursos

É possível compartilhar arquivos e pastas do Google Drive com outras pessoas usando a interface do Drive ou a API Google Drive. Ao compartilhar no Drive, você controla se as pessoas poderão editar, comentar ou apenas abrir o arquivo.

Uma chave de recurso ajuda a proteger seu arquivo contra acesso não intencional. As chaves de recurso são um parâmetro adicional transmitido para que os usuários possam acessar determinados arquivos compartilhados usando um link. Os usuários que nunca visualizaram o arquivo precisam fornecer a chave de recurso para ter acesso. Aqueles que visualizaram recentemente o arquivo ou que têm acesso direto não precisam da chave de recurso para acessá-lo.

Um arquivo do Drive compartilhado com um link só pode ser descoberto por usuários com acesso a ele como resultado de um recurso permissions type=user ou type=group. As solicitações de usuários que só têm acesso a esses arquivos de link usando uma permissão type=domain ou type=anyone podem exigir uma chave de recurso.

Para mais informações sobre permissões, consulte Compartilhar arquivos, pastas e drives. Para uma lista completa de papéis e as operações permitidas por cada um, consulte Papéis e permissões.

Ler a chave de recurso do arquivo

A API Drive retorna a chave de recurso de um arquivo no campo resourceKey somente leitura do recurso files.

Se o arquivo for um atalho do Drive, a chave de recurso para o destino do atalho será retornada no campo shortcutDetails.targetResourceKey somente leitura.

Os campos no recurso files que retornam URLs, como exportLinks, webContentLink e webViewLink, também incluem o resourceKey. Os clientes que se integram à interface do Drive também podem usar resourceKeys no parâmetro state. Para mais informações, consulte Fazer o download e exportar arquivos.

Definir a chave de recurso na solicitação

As chaves de recurso de todos os arquivos referenciados pelas solicitações à API Drive são definidas no cabeçalho HTTP X-Goog-Drive-Resource-Keys.

As solicitações para a API Drive podem especificar uma ou mais chaves de recurso com o cabeçalho HTTP X-Goog-Drive-Resource-Keys.

Sintaxe

Um ID de arquivo e um par de chaves de recurso são definidos no cabeçalho usando um separador de barra (/). O cabeçalho é criado combinando todos os pares de IDs de arquivo e chaves de recursos usando separadores de vírgula (,).

Por exemplo, considere uma solicitação para mover o arquivo fileId1 da pasta fileId2 para a pasta fileId3. Suponha que as chaves de recurso para esses três arquivos sejam resourceKey1, resourceKey2 e resourceKey3, respectivamente. O cabeçalho criado a partir desses valores usando uma barra e separadores de vírgula é:

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