我們在 2024 年 9 月 宣布更新基礎架構,以更符合Google Cloud Storage 配額和帳單規定,並防範平台濫用行為。
以下是兩個重點:
如要進一步瞭解相關異動,請參閱下列常見問題:
帳單規定與疑難排解
如要使用 Cloud Storage for Firebase ,Firebase 專案必須採用即付即用 Blaze 定價方案 。即使採用 Blaze 定價方案,還是可以享有免付費用量。
如果 Firebase 專案採用 Spark 定價方案,您將無法存取任何 Cloud Storage 儲存空間 (包括預設儲存空間),且對儲存空間發出的 API 呼叫會傳回 402 或 403 錯誤。
如何取回存取權
如要恢復存取 Cloud Storage 資源和資料,並維持服務品質,請升級至即付即用 Blaze 定價方案 。即使採用 Blaze 定價方案,仍可享有免付費用量,包括舊版*.appspot.com 預設 bucket。
無法存取控制台
如果專案採用 Spark 定價方案,您將無法再透過 Firebase 控制台和 Google Cloud 控制台存取 bucket。系統會將你重新導向至Cloud Storage 到達網頁,你可以在該處升級至 Blaze 定價方案。
402 和 403 錯誤
如果專案採用 Spark 定價方案,對 Cloud Storage API 的呼叫 (例如來自應用程式) 會失敗,並傳回 402 或 403 錯誤。請按照上方「如何重新取得存取權」 的指引操作,或查看下方的疑難排解選項 。
402 錯誤
"error": {
"code": 402,
"message": "Cloud Storage for Firebase no longer supports Firebase projects that are on the no-cost Spark pricing plan. Please upgrade to the pay-as-you-go Blaze pricing plan to maintain access to your default bucket and all other Cloud Storage resources. For details, see our FAQ: https://firebase.google.com/docs/storage/faqs-storage-changes-announced-sept-2024"
}
或
storage/quota-exceeded: Firebase Storage: Quota for bucket '{project-id}.appspot.com' exceeded, please view quota on https://firebase.google.com/pricing/. (storage/quota-exceeded)
403 錯誤
<Error>
<Code>UserProjectAccountProblem</Code>
<Message>The project to be billed is associated with an absent billing account.</Message>
<Details>The billing account for the owning project is disabled in state absent</Details>
</Error>
或
storage/unauthorized: User does not have permission to access {path}
疑難排解
如果遇到任何問題,請參閱這些疑難排解資源。如果下列方法都無法解決問題,請與 Firebase 支援團隊聯絡 。
排解帳單設定問題
Cloud Billing 說明文件提供常見帳單和付款問題的疑難排解說明 。舉例來說,如果系統不接受印度簽帳金融卡或信用卡 ,您可以在這裡找到解決方法。
排解服務帳戶權限問題
如要讓 Cloud Storage for Firebase 正常運作,Firebase 專案中的服務帳戶必須具備特定 IAM 權限。
如果在 Firebase 控制台中收到與這個服務帳戶權限相關的錯誤訊息,通常是因為服務帳戶已從 Firebase 專案中刪除。如要解決這個問題,請按照這篇常見問題 中的步驟操作。
定價方案常見問題
如要使用 Cloud Storage for Firebase ,Firebase 專案必須採用即付即用 Blaze 定價方案 。即使採用 Blaze 定價方案,還是可以享有免付費用量。
重要事項 :以下是價格方案規定的重點摘要 (詳情請參閱下方的各個常見問題):
如要佈建新的Cloud Storage for Firebase 預設 bucket,Firebase 專案必須採用即付即用 Blaze 定價方案 。儲存空間可選擇使用「一律免費」方案 ,以進行Google Cloud Storage 。
如要繼續存取預設 bucket 和所有其他Cloud Storage 資源,Firebase 專案必須採用即付即用 Blaze 定價方案 。即使採用 Blaze 定價方案,任何*.appspot.com 預設 bucket 仍會維持目前的免付費用量級別。
我們瞭解您需要時間評估這些異動,並變更 Firebase 專案和工作流程。如有任何問題,請與 Firebase 支援團隊 聯絡。
Cloud Storage for Firebase 的定價方案有哪些規定?
使用 Cloud Storage for Firebase 的所有專案都必須符合下列帳單規定:
如要使用 Firebase 控制台或 REST API 佈建新的預設 bucket ,專案必須採用即付即用 Blaze 定價方案 。
2024 年 9 月 「之後 佈建的所有預設 bucket 都具備下列特徵:
如要繼續存取預設 bucket 和所有其他Cloud Storage 資源 ,專案必須採用即付即用 Blaze 定價方案 。即使採用 Blaze 定價方案,任何*.appspot.com 預設 bucket 仍會維持目前的免付費用量級別。
進一步瞭解不升級至 Blaze 定價方案的後果 。如有任何問題,請與 Firebase 支援團隊 聯絡。
Firebase 為什麼要調整定價方案?
Firebase 致力於維護產品和生態系統的安全。為此,我們將對Cloud Storage for Firebase 進行一些變更,並採取積極措施,防範平台濫用行為。包括更新基礎架構,以更符合 Google Cloud Storage 配額和帳單。
如果*.appspot.com 預設值 bucket 的用量超過免付費用量等級,會發生什麼情況?
如果您有PROJECT_ID .appspot.com 預設 bucket,並升級至 Blaze 定價方案,且用量超過下列免付費用量級別,系統會在下個帳單週期,按照Google App Engine 定價 向您收取超額費用。
已儲存 5 GB
每天下載 1 GB
每天 20,000 次上傳
每天 50,000 次下載
如有任何問題,請與 Firebase 支援團隊 聯絡。
預設 Cloud Storage 值區的變更
重要事項 :以下是預設儲存空間的重點摘要 (詳情請參閱下方的常見問題):
所有新佈建的預設 Cloud Storage 值區名稱格式為 PROJECT_ID .firebasestorage.app 。
這些 bucket 遵循Google Cloud Storage 定價和用量 ,
為 US-CENTRAL1 、US-EAST1 和 US-WEST1 中的 bucket 提供「一律免費」層級 。
現有PROJECT_ID .appspot.com 預設值 bucket 的名稱不會變更。
如要進一步瞭解這些規定,請參閱下列常見問題。如有任何疑問,請與 Firebase 支援團隊 聯絡。
預設值區的名稱會變更嗎?
不會。升級至 Blaze 定價方案後,預設 Cloud Storage bucket 的名稱不會 變更。
如果預設 bucket 是在 2024 年 9 月 前建立,則預設 bucket 的名稱格式為 PROJECT_ID .appspot.com 。
但如果刪除 *.appspot.com 值區 並佈建新的預設值區,則不在此限。
如果您最近建立預設 bucket (2024 年 9 月 之後),預設 bucket 的名稱格式為 PROJECT_ID .firebasestorage.app 。
如果我刪除*.appspot.com 預設值區會怎麼樣?
在 bucket 遭到永久刪除前,您可以使用 Cloud Storage Buckets: restore API 還原已刪除的 bucket。
如果您刪除 PROJECT_ID .appspot.com 預設值區,就無法再以相同名稱格式佈建值區。
您可以建立新的預設 Cloud Storage 值區 (如果專案採用 Blaze 定價方案),該值區的名稱格式為 PROJECT_ID .firebasestorage.app 。並遵循 Google Cloud Storage 定價和用量 ,為 US-CENTRAL1 、US-EAST1 和 US-WEST1 的儲存空間提供「一律免費」層級 。
我是否需要更新應用程式的程式碼集?
不需要。您不 需要更新應用程式的程式碼集。
所有現有的 PROJECT_ID .appspot.com 預設值區都會維持名稱格式。
只要專案採用即付即用 Blaze 定價方案 ,程式碼集就會繼續與PROJECT_ID .appspot.com 預設 bucket 互動。
我是否需要將資料移出 *.appspot.com 預設值區?
不需要。您不必 將資料移出預設值區 PROJECT_ID .appspot.com 。
只要將專案升級至即付即用 Blaze 定價方案 ,您就能繼續存取 bucket,服務也不會中斷。
程式輔助互動 (例如 REST API 和 Terraform) 的異動
如果您以程式輔助方式 (例如使用 REST API 或 Terraform) 佈建或使用預設 Cloud Storage for Firebase 儲存空間,請查看下列變更,確認是否需要變更工作流程或應用程式。
重要事項 :以下是程式輔助互動的重點摘要 (詳情請參閱下方的常見問題):
如要進一步瞭解這些規定,請參閱下列常見問題。如有任何疑問,請與 Firebase 支援團隊 聯絡。
使用 REST API 時有哪些異動?
下列變更適用於涉及 Cloud Storage for Firebase 的 REST API:
「預設 Google Cloud 資源」的變更
「預設 Google Cloud 資源」 是指與 Google App Engine 相關聯的任何專案資源,包括:
預設 Cloud Firestore 執行個體
預設 Cloud Storage for Firebase bucket (具體來說,名稱格式為 PROJECT_ID .appspot.com 的 bucket)
Google Cloud Scheduler (專為第 1 代排程函式設計)
Firebase 生態系統多年來歷經多次變更,因此 Firebase 相關資源與 Google App Engine 的關聯也隨之改變。
如要進一步瞭解這些規定,請參閱下列常見問題。如有任何疑問,請與 Firebase 支援團隊 聯絡。
「預設 Google Cloud 資源的位置」發生了什麼事?
「預設 Google Cloud 資源位置」 是與 Google App Engine 相關聯的所有專案資源的位置設定,包括:
預設 Cloud Firestore 執行個體
預設 Cloud Storage for Firebase bucket (具體來說,名稱格式為 PROJECT_ID .appspot.com 的 bucket)
Google Cloud Scheduler (專為第 1 代排程函式設計)
在專案中設定上述任一資源時,您會連帶設定專案中 Google App Engine 應用程式的位置。這會為與 Google App Engine 相關聯的所有資源設定位置。
重要事項: 自 2024 年 10 月 30 日 起,佈建預設 Cloud Storage bucket 不再會設定「預設 Google Cloud 資源的位置」(例如專案預設 Cloud Firestore 執行個體的位置)。此外,預設 Cloud Firestore 執行個體不再為新的預設 Cloud Storage 值區 (名稱格式為 PROJECT_ID .firebasestorage.app 的值區) 設定位置。
注意事項:
2024 年 9 月 PROJECT_ID .appspot.com 前佈建的任何預設 Cloud Storage 值區 (名稱格式為 PROJECT_ID .appspot.com) 都與 Google App Engine 相關聯。這表示:
值區位置會設定與 Google App Engine 相關聯的資源位置 (例如預設 Cloud Firestore 執行個體的位置)。
2024 年 9 月 「之後」佈建的任何預設 Cloud Storage 值區 (名稱格式為 PROJECT_ID .firebasestorage.app ),都「不會」與 Google App Engine 建立關聯。這表示:
如何設定或取得「預設 Google Cloud 資源」的位置?
「預設 Google Cloud 資源」 是指與 Google App Engine 相關聯的任何專案資源,包括:
預設 Cloud Firestore 執行個體
預設 Cloud Storage for Firebase bucket (具體來說,名稱格式為 PROJECT_ID .appspot.com 的 bucket)
Google Cloud Scheduler (專為第 1 代排程函式設計)
「預設 Google Cloud 資源」的概念不適用於名稱格式為 PROJECT_ID .firebasestorage.app 的預設 Cloud Storage 儲存空間,且這些儲存空間不會 與 Google App Engine 建立關聯。詳情請參閱常見問題:
「預設 Google Cloud 資源的位置」發生了什麼事?
重要事項: 由於*.firebasestorage.app 預設值 bucket 與 Google App Engine 無關聯,因此其位置不會 設定「預設 Google Cloud 資源的位置」(例如預設 Cloud Firestore 執行個體的位置)。此外,在專案中先 佈建預設 Cloud Firestore 執行個體,並不會設定這些*.firebasestorage.app 預設值區的位置。 如要設定或取得專案中任何資源的位置,請直接與該資源互動。
預設 Cloud Storage for Firebase bucket
在Firebase 控制台中:
在 Firebase 控制台的「Storage」(儲存空間) 部分 中,設定及尋找預設 Cloud Storage 值區的位置。
使用 REST API:
預設 Cloud Firestore 執行個體
請注意,如果您有舊版*.appspot.com 預設值 bucket (2024 年 9 月 前 佈建),則專案預設 Cloud Firestore 執行個體的位置已設定完畢 (因為與 Google App Engine 建立關聯)。
在Firebase 控制台中:
在 Firebase 控制台的「Firestore」 部分 ,設定及尋找預設 Cloud Firestore 執行個體的位置。
使用 REST API:
排定時間執行的函式 (第 1 代)
請注意,如果您有舊版 *.appspot.com 預設值 bucket (在 2024 年 9 月 「之前」佈建),則專案的排定函式 (第 1 代) 已設定 (因為與 Google App Engine 建立關聯)。