使用資源金鑰存取連結共用的雲端硬碟檔案

您可以使用 雲端硬碟 UI Google Drive API,與他人共用 Google 雲端硬碟檔案和資料夾。透過雲端硬碟共用檔案時,您可以控制共用對像是否可以編輯、加註,或只能開啟檔案。

資源金鑰有助於防止他人擅自存取檔案。資源金鑰是系統傳遞的額外參數,可讓使用者透過連結存取透過連結共用的特定檔案。如果使用者尚未查看檔案,則必須提供資源金鑰來取得存取權。最近查看或可直接存取檔案的使用者,不需要資源金鑰即可存取檔案。

只有因 type=usertype=group permissions 資源而能存取檔案的使用者,才能找到透過連結共用的雲端硬碟檔案。如果使用者只透過 type=domaintype=anyone 權限存取這些連結共用檔案,則可能需要資源金鑰。

如要進一步瞭解權限,請參閱「共用檔案、資料夾和雲端硬碟」。如需角色以及各角色所允許作業的完整清單,請參閱角色與權限

從檔案中讀取資源金鑰

Drive API 會在 files 資源的唯讀 resourceKey 欄位中傳回檔案資源金鑰。

如果檔案是雲端硬碟捷徑,系統會在唯讀的 shortcutDetails.targetResourceKey 欄位中傳回捷徑目標的資源金鑰。

files 資源中會傳回網址的欄位 (例如 exportLinkswebContentLinkwebViewLink),也包含 resourceKey。與雲端硬碟 UI 整合的用戶端也可在 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