Acessar arquivos do Drive compartilhados por link usando chaves de recursos

Você pode compartilhar arquivos e pastas do Google Drive com outras pessoas usando a interface do Drive ou a API Google Drive. Ao compartilhar pelo Drive, você controla se as pessoas podem 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 por um link. Os usuários que nunca viram o arquivo precisam fornecer a chave de recurso para ter acesso. As pessoas que visualizaram o arquivo recentemente ou têm acesso direto não precisam da chave de recurso para acessá-lo.

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

Saiba mais sobre permissões em 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 no 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 vai ser retornada no campo shortcutDetails.targetResourceKey somente leitura.

Os campos no recurso files que retornam URLs, como exportLinks, webContentLink e webViewLink, também incluem 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 para todos os arquivos referenciados por 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 uma barra (/). O cabeçalho é criado combinando todos os pares de IDs de arquivos e chaves de recurso 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 desses três arquivos sejam resourceKey1, resourceKey2 e resourceKey3, respectivamente. O cabeçalho criado a partir desses valores usando uma barra e vírgulas como separadores é:

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