本頁面概述了 Firebase 的關鍵安全和隱私信息。無論您是想使用 Firebase 啟動新項目,還是想了解 Firebase 如何與現有項目配合使用,請繼續閱讀以了解 Firebase 如何幫助保護您和您的用戶。
最後修改時間:2023 年 7 月 25 日
數據保護
Firebase 對 GDPR 和 CCPA 的支持
2018 年 5 月 25 日,歐盟通用數據保護條例 (GDPR) 取代了 1995 年歐盟數據保護指令。 2020 年 1 月 1 日,《加州消費者隱私法案》(CCPA) 生效。 2023 年 1 月 1 日,《加州隱私權法案》(CPRA) 生效,這是一項對 CCPA 進行修訂和擴展的數據隱私法。 Google 致力於幫助我們的客戶在這些隱私法規下取得成功,無論他們是大型軟件公司還是獨立開發商。
GDPR 對數據控制者和數據處理者規定了義務,CCPA/CPRA 對企業及其服務提供商規定了義務。 Firebase 客戶通常充當“數據控制者”(GDPR) 或“企業”(CCPA/CPRA),負責向 Google 提供與使用 Firebase 相關的最終用戶的任何個人數據或信息,而 Google 通常作為“數據處理者”(GDPR) 或“服務提供商”(CCPA/CPRA)。
這意味著數據處於客戶的控制之下。客戶有責任履行義務,例如履行個人對其個人數據或信息的權利。
Firebase 數據處理和安全條款
當客戶使用 Firebase 時,Google 通常是 GDPR 下的數據處理者並代表他們處理個人數據。同樣,當客戶使用 Firebase 時,Google 通常會作為 CCPA/CPRA 規定的服務提供商,代表客戶處理個人信息。 Firebase 條款包括詳細說明這些責任的數據處理和安全條款。
受Google Cloud Platform (GCP) 服務條款管轄的某些 Firebase 服務已包含在相關數據處理條款(雲數據處理附錄)中。當前受 GCP 服務條款約束的 Firebase 服務的完整列表可在Firebase 服務的服務條款中找到。
Google Analytics 是一項單獨的服務,可與 Firebase 一起使用,並受單獨的條款約束。
Firebase 通過了主要隱私和安全標準的認證
ISO 和 SOC 合規性
所有 Firebase 服務(App Indexing 除外)均已成功完成ISO 27001以及SOC 1 、 SOC 2和SOC 3評估流程,部分服務還完成了ISO 27017和ISO 27018認證流程。可以通過合規性報告管理器索取受 GCP 服務條款管轄的 Firebase 服務的合規性報告和證書
服務名稱 | ISO 27001 | ISO 27017 | ISO 27018 | SOC 1 | SOC 2 | SOC 3 |
---|---|---|---|---|---|---|
Firebase 機器學習 | ||||||
Firebase 測試實驗室 | ||||||
雲Firestore | ||||||
Firebase 的雲功能 | ||||||
Firebase 雲存儲 | ||||||
Firebase 身份驗證 | ||||||
Firebase Crashlytics | ||||||
Firebase 應用程序檢查 | ||||||
Firebase 應用程序分發 | ||||||
Firebase 應用內消息傳遞 | ||||||
Firebase 雲消息傳遞 | ||||||
Firebase 性能監控 | ||||||
Firebase 託管 | ||||||
Firebase 動態鏈接 | ||||||
Firebase 遠程配置 | ||||||
Firebase 實時數據庫 | ||||||
Firebase 平台 | ||||||
Firebase A/B 測試 |
國際數據傳輸
隱私護盾框架提供了一種機制,可以在將歐洲經濟區、英國或瑞士個人數據傳輸到美國及以後的數據時遵守數據保護要求。鑑於歐盟法院關於數據傳輸的裁決,使歐盟-美國隱私護盾無效,Firebase 已轉而依賴標準合同條款進行相關數據傳輸,根據該裁決,該條款可以繼續作為根據 GDPR 傳輸數據的有效法律機制。歐盟委員會於 2021 年 6 月 4 日批准了新版本的標準合同條款,我們正在將其納入與 Firebase 客戶的相關數據傳輸合同中。
我們致力於根據適用的數據保護法為數據傳輸提供合法依據。
數據處理信息
Firebase 處理的最終用戶數據示例
某些 Firebase 服務會處理最終用戶的數據以提供服務。下圖舉例說明了各種 Firebase 服務如何使用和處理可能具有識別性的最終用戶數據。此外,許多 Firebase 服務都提供請求刪除特定數據或控制數據處理方式的功能。
Firebase 服務 | 最終用戶數據 | 數據如何幫助提供服務 |
---|---|---|
Firebase 的雲功能 |
| 如何提供幫助: Cloud Functions 使用 IP 地址根據最終用戶操作執行事件處理函數和 HTTP 函數。 保留:雲功能僅臨時保存IP地址,以提供服務。 |
Firebase 身份驗證 |
| 如何提供幫助: Firebase 身份驗證使用這些數據來啟用最終用戶身份驗證,並促進最終用戶帳戶管理。它還使用用戶代理字符串和 IP 地址來提供額外的安全性並防止註冊和身份驗證期間的濫用。 保留: Firebase 身份驗證會將記錄的 IP 地址保留幾週。它會保留其他身份驗證信息,直到 Firebase 客戶發起刪除關聯用戶為止,之後數據會在 180 天內從實時和備份系統中刪除。 |
Firebase 應用程序檢查 |
| 如何提供幫助: Firebase App Check 使用相應證明提供商所需的以及從最終用戶設備接收的證明材料來幫助建立設備和/或應用的完整性。根據開發者的配置,將認證材料發送至相應的認證提供商進行驗證。從成功證明中獲得的 App Check 令牌會隨每個請求發送到受支持的 Firebase 服務,以訪問受 App Check 保護的資源。 保留: App Check 不會保留證明材料,但將其發送給證明提供商時,須遵守這些證明提供商的條款。成功證明返回的 App Check 令牌在整個 TTL 持續時間內有效,該持續時間不能超過 7 天。對於使用重放保護功能的開發人員,App Check 會將與這些功能一起使用的 App Check 令牌存儲最多 30 天。 Firebase 服務不會保留未與重放保護功能一起使用的其他應用檢查令牌。 |
Firebase 應用程序分發 |
| 如何提供幫助: Firebase App Distribution 使用這些數據將應用程序版本分發給測試人員、監控測試人員活動、啟用應用程序內反饋等測試人員功能,並將數據與測試人員設備相關聯。 保留: Firebase App Distribution 會保留用戶信息,直到 Firebase 客戶請求刪除為止,之後數據會在 180 天內從實時和備份系統中刪除。 |
Firebase 雲消息傳遞 |
| 如何提供幫助: Firebase Cloud Messaging 使用 Firebase 安裝 ID 來確定將消息傳送到哪些設備。 保留: Firebase 會保留 Firebase 安裝 ID,直到 Firebase 客戶調用 API 來刪除該 ID。通話結束後,數據會在 180 天內從實時系統和備份系統中刪除。 |
Firebase Crashlytics |
| 如何提供幫助: Firebase Crashlytics 使用崩潰堆棧跟踪將崩潰與項目關聯起來,向項目成員發送電子郵件警報並將其顯示在 Firebase 控制台中,並幫助 Firebase 客戶調試崩潰。它使用 Crashlytics 安裝 UUID 來測量受崩潰影響的用戶數量,並使用小型轉儲數據來處理 NDK 崩潰。處理崩潰會話時會存儲小型轉儲數據,然後將其丟棄。 Firebase 安裝 ID 支持即將推出的功能,這些功能將增強崩潰報告和崩潰管理服務。有關收集的用戶信息類型的更多詳細信息,請參閱存儲的設備信息示例。 保留: Firebase Crashlytics 會將崩潰堆棧跟踪、提取的小型轉儲數據和關聯標識符(包括 Crashlytics 安裝 UUID 和 Firebase 安裝 ID)保留 90 天,然後再開始從實時和備份系統中刪除它們。 |
Firebase 動態鏈接 |
| 有什麼幫助:動態鏈接使用 iOS 上的設備規格和 IP 地址將新安裝的應用程序打開到特定頁面或上下文。 保留:動態鏈接僅臨時存儲設備規格和 IP 地址,以提供服務。 |
Firebase 託管 |
| 有何幫助:託管使用傳入請求的 IP 地址來檢測濫用行為,並為客戶提供使用數據的詳細分析。 保留:託管會將 IP 數據保留幾個月。 |
Firebase 性能監控 |
| 作用:性能監控使用 Firebase 安裝 ID 來計算訪問網絡資源的唯一 Firebase 安裝數量,以確保訪問模式足夠匿名。它還將 Firebase 安裝 ID 與 Firebase Remote Config 結合使用來管理性能事件報告的速率。此外,它還使用 IP 地址將績效事件映射到其來源國家/地區。有關詳細信息,請參閱數據收集。 保留:性能監控將與 IP 相關的事件保留 30 天,並將與安裝相關的和去標識化的性能數據保留 90 天,然後開始將其從實時和備份系統中刪除。 |
Firebase 應用內消息傳遞 |
| 如何提供幫助: Firebase 應用內消息使用 Firebase 安裝 ID 來確定將消息傳送到哪些設備。 保留: Firebase 會保留 Firebase 安裝 ID,直到 Firebase 客戶調用 API 來刪除該 ID。通話結束後,數據會在 180 天內從實時系統和備份系統中刪除。 |
Firebase 實時數據庫 |
| 如何提供幫助:實時數據庫使用 IP 地址和用戶代理來啟用分析器工具,從而幫助 Firebase 客戶了解使用趨勢和平台故障。 保留:實時數據庫會將 IP 地址和用戶代理信息保留幾天,除非客戶選擇保存更長時間。 |
Firebase 遠程配置 |
| 如何提供幫助:遠程配置使用 Firebase 安裝 ID 來選擇配置值以返回到最終用戶設備。 保留: Firebase 會保留 Firebase 安裝 ID,直到 Firebase 客戶調用 API 來刪除該 ID。通話結束後,數據會在 180 天內從實時系統和備份系統中刪除。 |
Firebase 機器學習 |
| 有什麼幫助:基於雲的 API 臨時存儲上傳的圖像,以處理分析結果並將其返回給您。存儲的圖像通常會在幾個小時內刪除。有關更多信息,請參閱 Cloud Vision數據使用常見問題解答。 Firebase ML 在與應用實例交互時使用安裝身份驗證令牌進行設備身份驗證,例如,將開發人員模型分發到應用實例。 保留:安裝身份驗證令牌在到期日期之前保持有效。默認令牌有效期為一周。 |
Crashlytics 收集的信息示例
- RFC-4122 UUID,允許我們消除重複的崩潰
- Crashlytics 安裝 UUID
- Firebase 安裝 ID (FID)
- Firebase 會話 ID,它是為使用會話標記事件而生成的隨機 UUID
- 崩潰發生時的時間戳
- 應用程序的包標識符和完整版本號
- 設備的操作系統名稱和版本號
- 指示設備是否越獄/root 的布爾值
- 設備的型號名稱、CPU 架構、RAM 數量和磁盤空間
- 當前運行的每個線程的每一幀的 uint64 指令指針
- 如果在運行時可用,則包含每個指令指針的純文本方法或函數名稱。
- 如果拋出異常,則異常的純文本類名和消息值
- 如果發出致命信號,則顯示其名稱和整數代碼
- 對於加載到應用程序中的每個二進制映像,其名稱、UUID、字節大小以及加載到 RAM 中的 uint64 基地址
- 一個布爾值,指示應用程序崩潰時是否在後台
- 指示崩潰時屏幕旋轉的整數值
- 指示設備的接近傳感器是否被觸發的布爾值
version-control-info.textproto
的內容(僅適用於配置為使用版本控制系統 (VCS) 集成的Android 應用程序)
性能監控收集的信息示例
- Firebase 安裝 ID (FID)
- Firebase 會話 ID,它是為使用會話標記事件而生成的隨機 UUID
- 一般設備信息,例如型號、操作系統和方向
- RAM 和磁盤大小
- CPU使用率
- 運營商(基於移動國家/地區和網絡代碼)
- 無線電/網絡信息(例如,WiFi、LTE、3G)
- 國家/地區(基於 IP 地址)
- 區域設置/語言
- 應用程序版本
- 應用程序前台或後台狀態
- 應用程序包名稱
- Firebase 安裝 ID
- 自動跟踪的持續時間
- 網絡URL(不包括URL參數或負載內容)以及以下相應信息:
- 響應代碼(例如,403、200)
- 有效負載大小(以字節為單位)
- 響應時間
查看性能監控收集的自動跟踪的完整列表。
啟用最終用戶數據處理選擇加入的指南
上表中的服務需要一定量的最終用戶數據才能運行。因此,在使用這些服務時不可能完全禁用數據收集。
如果您是一位客戶,希望為用戶提供選擇加入某項服務以及隨之而來的數據收集的機會,那麼在大多數情況下,只需要在使用該服務之前添加一個對話框或設置切換即可。
但是,某些服務在包含在應用程序中時會自動啟動。為了讓用戶有機會在使用這些服務之前選擇加入,您可以選擇禁用每個服務的自動初始化,並在運行時手動初始化它們。要了解如何操作,請閱讀以下指南:
- 雲消息傳遞:防止自動初始化 (Android)或防止自動初始化 (iOS+)
- Crashlytics:啟用選擇加入報告 (iOS+)或啟用選擇加入報告 (Android)
- 性能監控:啟用選擇加入監控
如果您將 Firebase 與 Google Analytics 集成,請了解如何配置 Analytics 數據收集。
數據存儲和處理位置
除非服務或功能提供數據位置選擇,否則 Firebase 可能會在 Google 或其代理維護設施的任何位置處理和存儲您的數據。潛在的設施位置因服務而異。
僅限美國的服務
Firebase 身份驗證服務僅在美國數據中心運行。因此,Firebase 身份驗證僅在美國處理數據。
全球服務
大多數 Firebase 服務都在全球 Google 基礎設施上運行。他們可以在任何Google Cloud Platform 位置或Google 數據中心位置處理數據。對於某些服務,您可以進行特定的數據位置選擇,將處理限制在該位置。
- Firebase 雲存儲
- 雲Firestore
- Firebase 的雲功能
- Firebase 託管
- Firebase Crashlytics
- Firebase 性能監控
- Firebase 動態鏈接
- Firebase 遠程配置
- Firebase 雲消息傳遞
- Firebase 機器學習
- Firebase 測試實驗室
- Firebase 應用程序檢查
安全信息
數據加密
Firebase 服務使用 HTTPS 對傳輸中的數據進行加密,並在邏輯上隔離客戶數據。
此外,一些 Firebase 服務還對其靜態數據進行加密:
- 雲Firestore
- Firebase 的雲功能
- Firebase 雲存儲
- Firebase Crashlytics
- Firebase 身份驗證
- Firebase 雲消息傳遞
- Firebase 實時數據庫
- Firebase 測試實驗室
- Firebase 應用程序檢查
- Firebase 性能監控
安全實踐
為了確保個人數據安全,Firebase 採用了廣泛的安全措施來最大程度地減少訪問:
- Firebase 限制特定員工出於商業目的訪問個人數據。
- Firebase 記錄員工對包含個人數據的系統的訪問。
- Firebase 僅允許使用 Google 登錄和兩因素身份驗證登錄的員工訪問個人數據。
Firebase 服務數據
Firebase 服務數據是 Google 在提供和管理 Firebase 服務期間收集和生成的個人信息* ,不包括我們涵蓋 Firebase 服務和Google Cloud 服務數據的客戶協議中定義的客戶數據** 。 Firebase 服務數據的示例包括有關服務使用情況的信息、應用程序 ID 和包名稱/捆綁包 ID 等資源標識符、IP 地址等使用的技術和操作詳細信息,以及通過反饋和支持相關對話與開發人員進行直接通信。
*涵蓋的服務包括 Firebase A/B 測試、Firebase 應用檢查、Firebase 應用分發、Firebase 雲消息傳遞、Firebase Crashlytics、Firebase 動態鏈接、Firebase 託管、Firebase 應用內消息傳遞、Firebase ML、Firebase 性能監控、Firebase 實時數據庫、Firebase遠程配置和 Firebase 用戶分段存儲。
**有關我們如何處理客戶數據的更多信息,請參閱我們的Firebase 數據處理和安全條款。
Firebase 如何處理 Firebase 服務數據的示例
Google 根據我們的隱私政策和適用條款使用 Firebase 服務數據。例如,Firebase 服務數據可用於:
- 提供您請求的 Firebase 服務
- 提出優化 Firebase 服務使用的建議
- 維護和改進 Firebase 服務
- 提供並改進您要求的其他服務
- 了解您對 Firebase 和其他 Google 服務的使用情況
- 為您提供更好的支持並與您溝通
- 保護您、我們的用戶、公眾和 Google
- 遵守法律義務
非 Firebase Google 服務使用的 Firebase 服務數據
您可以控制 Google 是否可以使用您的 Firebase 服務數據來提供有關非 Firebase Google 服務的更深入的分析、見解和建議,以及改進非 Firebase Google 服務。您可以在 Firebase 數據隱私設置頁面中進行配置。
如果禁用此控件,Firebase 服務數據將根據我們的隱私政策和適用條款繼續用於其他目的,例如上述目的,包括提出有關 Firebase 服務的建議和改進Firebase服務,以及提供和改進其他目的您請求的服務,例如您鏈接到 Firebase 項目的 Google 產品。
還有疑問嗎?聯繫我們
對於此處未涵蓋的任何與隱私相關的問題,請聯繫 Firebase 支持。如果您是 Firebase 開發者,請提供您的 Firebase 應用 ID。在項目設置的您的應用卡中找到您的 Firebase 應用 ID。