要求者付費

設定方式

本頁提供 Cloud Storage 的要求者付費功能總覽。

簡介

每當使用者存取 Cloud Storage 資源 (例如 bucket 或物件) 時,系統會針對提出及執行要求收取費用。這類費用包括:

一般來說,系統會向資源的專案擁有者收取這些費用;不過,如果要求者在要求中提供計費專案,系統就會改向要求者的專案收費。在值區啟用「要求者付費」功能後,您可以要求要求者在要求中加入計費專案,以便向要求者的專案收費。例如,如果您有許多資料想提供給使用者,但不想為那些使用者存取資料付費時,啟用要求者付費功能就非常有用。

未包含在內的費用

資料儲存費用 (包括提前刪除費用) 一律會套用至包含 bucket 的專案,即使已啟用「由要求者付費」也一樣。

限制

下列限制適用於要求者付費:

  • 您無法使用已啟用「要求付款人」的 bucket,從 Cloud SQL 匯入及匯出資料。
  • 您無法使用已啟用「要求者付費」功能的 bucket 匯出 Pub/Sub 資料。

使用及存取需求

如要在 bucket 上啟用「要求者付費」模式,請啟用 bucket 的中繼資料旗標。啟用後,只有下列使用者可以存取值區或其內容:

  • 要求者在要求中加入計費專案。要求中使用的專案必須記錄良好,且使用者必須具備專案中的角色,該角色包含 serviceusage.services.use 權限。「服務使用情形消費者」角色包含必要權限。

  • 要求者未納入計費專案,但擁有包含 bucket 的專案的 resourcemanager.projects.createBillingAssignment 權限。帳單專案經理角色包含必要權限。與這些要求相關的存取費用會計入含有值區的專案帳單。

對值區的所有其他要求都會失敗,並顯示 400 UserProjectMissing 錯誤。

除了這些需求外,要求者還必須具備足夠的權限以執行所要求的動作。舉例來說,如果使用者在要求中提供有效的計費專案,但沒有明確權限 (例如該值區或包含該值區的專案具備 storage.objects.create 權限),就無法將物件上傳至值區。

停用「要求者付費」功能時,您必須在要求中加入計費專案,或具備 resourcemanager.projects.createBillingAssignment 權限。

來源計費作業

使用來源值區和目標值區的作業 (例如複製或重新寫入),會向含有來源值區的專案收取費用。在大部分情況下,例如使用 JSON 和 XML API 直接呼叫,如果來源值區已啟用要求者付費功能,您只需要納入計費專案即可。

在某些情況下 (例如 gcloud storage cp 含有 --no-clobber 旗標),如果來源值區或目的地值區 (或兩者) 啟用了「要求者付費」功能,您就必須加入計費專案。這是因為這類作業在執行動作時,會同時呼叫來源和目的地 buckets。

多要求作業

如果作業需要多個要求才能完成,則要求中使用帳單專案時,會有下列行為:

帳單

在要求中納入計費專案而產生的相關費用,不會單獨列在帳單中。舉例來說,假設您從「要求者付費」值區下載多個項目,並使用專案 my-project 做為要求的計費專案。如果 my-project 也包含您執行下載作業的 bucket,帳單只會顯示合併下載作業的總費用。不會分開顯示您自有值區的下載及要求者付費值區的下載。

如果您想將自己的 Cloud Storage 資源產生的費用,與在要求中納入計費專案的費用區分開,應建立專案且此專案不包含任何 Cloud Storage 資源:這個專案就專用於對其他專案中的資源提出要求,例如要求者付費值區。

後續步驟