管理待處理的存取提案

存取權提案是提出者向核准者提出的提案,要求核准者授予收件者 Google 雲端硬碟項目的存取權。

核准者可以查看並處理所有未解決的雲端硬碟檔案存取權提案。也就是說,您可以透過程式輔助方式查詢存取權提案,然後解決這些提案,加快審核程序。並允許核准者匯總查看提案。

Google 雲端硬碟 API 提供 accessproposals 資源,方便您查看及解決待處理的存取提案。accessproposals 資源的方法可用於共用雲端硬碟中的檔案、資料夾和檔案,但在共用雲端硬碟上運作。

以下是存取權提案專屬的條款:

  • 提出要求者:發起 Google 雲端硬碟項目存取權提案的使用者。
  • 收件者:如果存取權提案獲得核准,則是指收到檔案額外權限的使用者。收件者通常與要求者相同,但不一定如此。
  • 核准者:負責核准 (或拒絕) 存取權提案的使用者。這通常是因為他們是文件的擁有者,或是有權分享文件。

列出待處理的存取提案

如要列出雲端硬碟項目上的所有待處理存取提案,請在 accessproposals 資源上呼叫 list() 方法,並加入 fileId 路徑參數。

只有檔案核准者才能列出檔案中的待處理提案。核准者是指擁有檔案 can_approve_access_proposals 功能的使用者。如果要求者不是核准者,系統會傳回空白清單。如要進一步瞭解 capabilities,請參閱「瞭解檔案功能」。

回應主體包含 AccessProposal 物件,代表檔案中未解決的存取權提案清單。

AccessProposal 物件包含每個提案的相關資訊,例如要求者、收件者,以及要求者新增的訊息。它還包含 AccessProposalRoleAndView 物件,可將要求者的建議 roleview 分組。由於 role 是重複欄位,因此每個提案都可能有多次重複。舉例來說,提案可能包含 role=readerview=publishedAccessProposalRoleAndView 物件,以及另一個只包含 role=writer 值的 AccessProposalRoleAndView 物件。詳情請參閱「Views」。

傳遞下列查詢參數,即可自訂存取建議的頁面分頁或篩選條件:

  • pageToken:從先前 list 呼叫收到的頁面權杖。提供這個符記即可擷取後續網頁。

  • pageSize:每頁返回的存取建議數量上限。

解決待處理的存取權提案

如要解決 Drive 項目上所有待處理的存取提案,請在 accessproposals 資源上呼叫 resolve() 方法,並加入 fileIdproposalId 路徑參數。

resolve() 方法包含 action 查詢參數,用於表示要對提案採取的動作。Action 物件會追蹤提案的狀態變更,讓我們知道提案是否已接受或拒絕。

resolve() 方法也包含選用的 roleview 查詢參數。系統僅支援 writercommenterreader 這三種角色。如果未指定角色,則預設為 reader。另外,您可以使用 send_notification 這個選用查詢參數,在提案獲得核准或拒絕時,向提出要求者傳送電子郵件通知。

list() 方法相同,解決提案的使用者必須具備檔案的 can_approve_access_proposals 功能。如要進一步瞭解 capabilities,請參閱「瞭解檔案功能」。

我們會使用「共用 Drive 資源的情境」一節所列的相同模式來解決提案。如果同一位使用者有多項提案,但角色不同,則適用下列規定:

  • 如果一個提案已接受,另一個提案已拒絕,則會將已接受的角色套用至 Drive 項目。
  • 如果兩個提案同時通過,系統會套用具有較高權限的提案 (例如 role=writerrole=reader)。其他存取權提案會從項目中移除。

將提案傳送至 resolve() 方法後,分享動作就會完成。AccessProposal 不再透過 list() 方法傳回。提案接受後,使用者必須使用 permissions 集合,更新檔案或資料夾的權限。詳情請參閱「更新權限」。