使用资源密钥访问链接共享的云端硬盘文件

您可以使用 云端硬盘界面或通过 Google Drive API 与他人共享 Google 云端硬盘文件和文件夹。通过云端硬盘共享文件时,您可以控制用户是能够编辑文件或评论文件,还是只能打开文件。

资源密钥有助于保护文件免遭意外访问。资源键是传递的额外参数,以便用户访问使用链接共享的特定文件。之前未查看过该文件的用户必须提供资源密钥才能获得访问权限。最近查看过该文件或拥有直接访问权限的用户无需资源密钥即可访问该文件。

只有能够通过 type=usertype=group permissions 资源访问文件的用户才能发现使用链接共享的云端硬盘文件。如果用户仅使用 type=domaintype=anyone 权限访问这些通过链接共享的文件,则其请求可能需要提供资源键。

如需详细了解权限,请参阅共享文件、文件夹和云端硬盘。如需查看角色的完整列表以及每个角色允许执行的操作,请参阅角色和权限

从文件中读取资源键

Drive API 会返回 files 资源的只读 resourceKey 字段中的文件资源键。

如果文件是云端硬盘快捷方式,系统会在只读 shortcutDetails.targetResourceKey 字段中返回快捷方式目标的资源键。

files 资源中用于返回网址的字段(例如 exportLinkswebContentLinkwebViewLink)也包含 resourceKey。与云端硬盘界面集成的客户端还可以在 state 参数中使用 resourceKeys。如需了解详情,请参阅下载和导出文件

在请求中设置资源键

对 Drive API 的请求引用的任何文件的资源键均设置在 X-Goog-Drive-Resource-Keys HTTP 标头上。

对 Drive API 的请求可以使用 X-Goog-Drive-Resource-Keys HTTP 标头指定一个或多个资源键。

语法

文件 ID 和资源键对是在标头上使用正斜杠 (/) 分隔符设置的。该标头是通过使用英文逗号 (,) 分隔符组合所有文件 ID 和资源键值对构建的。

例如,假设有一个请求,要求将文件 fileId1 从文件夹 fileId2 移至文件夹 fileId3。假设这三个文件的资源键分别为 resourceKey1resourceKey2resourceKey3。使用正斜杠和英文逗号分隔符从这些值构建的标题如下所示:

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