Firebase IAM 權限

您可以透過「角色」將權限授予專案成員。角色是一組權限。將角色指派給專案成員時,您會授予該專案成員該角色包含的所有權限。

本頁面說明在 Firebase 支援的角色中可能列出的權限已啟用的動作。這些權限可分為以下兩類:

所需權限

Firebase IAM 具備下列權限:

如需 Firebase 產品或服務專屬權限的一般清單和說明,請參閱 Firebase 產品專屬 IAM 權限中的適當章節。

所有角色均具備必要權限

使用任何 Firebase 產品或服務時,您必須具備下表所列的權限。

每個 Firebase 預先定義角色都會自動加入這些權限。

權限 說明
可授予擷取 Firebase 專案資訊的權限
可授予擷取 Firebase 專案資訊的權限
可授予檢查 Google API 狀態及執行 Firebase CLI 指令的權限

Firebase 服務專屬動作的必要權限

您必須具備下表所列的權限,才能執行部分 Firebase 服務專屬動作。

在需要時,這些權限會自動加入每個 Firebase 預先定義角色中。

操作 所需權限
透過協作工具 (包括 Slack、Jira 和 PagerDuty) 整合 Firebase 專案 firebaseextensions.configs.*
透過 StackDriver 查看使用情形和數據分析 monitoring.timeSeries.list
執行 Firebase CLI 指令
詳情請參閱執行階段配置器存取權的 Google Cloud 說明文件。
runtimeconfig.*

Firebase 管理作業的所需權限

下表所列的權限是執行某些 Firebase 管理作業專屬動作所需的其他權限。

管理權限和相關動作 必要的額外權限
firebase.billingPlans.update
變更 Firebase 專案的計費方案 resourcemanager.projects.createBillingAssignment
resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
刪除 Firebase 專案 resourcemanager.projects.delete
firebase.projects.update
將 Firebase 資源加入現有的 Google Cloud 專案 resourcemanager.projects.get
serviceusage.services.enable
serviceusage.services.get
變更 Firebase 專案的名稱 resourcemanager.projects.update
為 Android 應用程式新增 SHA 憑證指紋 clientauthconfig.clients.create
移除 Android 應用程式的 SHA 憑證指紋 clientauthconfig.clients.delete
更新 Apple 應用程式的 App Store ID 或團隊 ID clientauthconfig.clients.get
clientauthconfig.clients.update

Firebase 產品專屬 IAM 權限

下表列出了 Firebase 產品或服務的專屬權限。您可以使用這些權限建立自訂角色

Firebase 管理權限

請注意,部分下列管理權限需要「額外」權限才能執行某些動作

權限名稱 說明
firebase.billingPlans.get 擷取專案目前的 Firebase 計費方案
firebase.billingPlans.update 變更專案目前的 Firebase 計費方案
firebase.clients.create 在專案中新增應用程式
firebase.clients.delete 從專案中刪除現有應用程式
firebase.clients.get 擷取專案中應用程式的詳細資料和設定
firebase.clients.list 擷取專案中的應用程式清單
firebase.clients.undelete 先取消刪除已刪除的應用程式,再永久刪除該應用程式的資料
firebase.clients.update 更新專案中應用程式的詳細資料和設定
firebase.links.create 建立新的 Google 系統連結
(「Firebase 控制台」>「專案設定」>「整合」)
firebase.links.delete 刪除連至 Google 系統的連結
(「Firebase 控制台」>「專案設定」>「整合」)
firebase.links.list 擷取連至 Google 系統的連結清單
(Firebase 控制台 >「專案設定」>「整合」)
firebase.links.update 更新 Google 系統的現有連結
(「Firebase 控制台」>「專案設定」>「整合」)
firebase.playLinks.get 擷取 Google Play 連結的詳細資料
(「Firebase 控制台」>「專案設定」>「整合」>「Google Play」)
firebase.playLinks.list 擷取 Google Play 連結清單
(「Firebase 控制台」>「專案設定」>「整合」>「Google Play」)
firebase.playLinks.update 建立新的連結並更新 Google Play 的現有連結
(「Firebase 控制台」>「專案設定」>「整合」>「Google Play」)
firebase.projects.delete 刪除現有專案
firebase.projects.get 擷取專案的詳細資料和 Firebase 資源
firebase.projects.update 修改現有專案的屬性
接收適用 Firebase 產品和功能的快訊 (瞭解詳情)
firebaseinstallations.instances.delete 刪除 Firebase 安裝 ID 及與該安裝相關的資料 (瞭解詳情)

Google Analytics (分析) 權限

下列權限可授予連結至 Firebase 專案的 Analytics (分析) 資源存取權。這樣才能讓 Firebase 專案成員存取 Analytics (分析) 資料,包括目標對象、使用者屬性、漏斗、報表和轉換等。

權限名稱 說明
firebaseanalytics.resources.googleAnalyticsEdit 根據預設,將 Analytics (分析) 編輯者角色授予已連結的 Analytics (分析) 資源
firebaseanalytics.resources.googleAnalyticsAdditionalAccess 根據預設,將 Analytics (分析) 行銷人員角色授予已連結的 Analytics (分析) 資源
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze 根據預設,將 Analytics (分析) 檢視者角色授予已連結的 Analytics (分析) 資源
firebaseanalytics.resources.googleAnalyticsRestrictedAccess 根據預設,系統會將 Analytics (分析) 檢視者角色授予已連結的 Analytics (分析) 資源,且無法存取收益資料和費用資料

Firebase App Check 權限

權限名稱 說明
firebaseappcheck.appAttestConfig.get 擷取應用程式的 App Attest 設定
firebaseappcheck.appAttestConfig.update 更新應用程式的 App Attest 設定
firebaseappcheck.appCheckTokens.verify 驗證針對 Firebase 專案核發的 App Check 權杖
firebaseappcheck.debugTokens.get 擷取應用程式的偵錯權杖
firebaseappcheck.debugTokens.update 建立、更新或刪除應用程式的偵錯權杖
firebaseappcheck.deviceCheckConfig.get 擷取應用程式的 DeviceCheck 設定
firebaseappcheck.deviceCheckConfig.update 更新應用程式的 DeviceCheck 設定
firebaseappcheck.playIntegrityConfig.get 擷取應用程式的 Play Integrity 設定
firebaseappcheck.playIntegrityConfig.update 更新應用程式的 Play Integrity 設定
firebaseappcheck.recaptchaEnterpriseConfig.get 擷取應用程式的 reCAPTCHA Enterprise 設定
firebaseappcheck.recaptchaEnterpriseConfig.update 更新應用程式的 reCAPTCHA Enterprise 設定
firebaseappcheck.recaptchaV3Config.get 擷取應用程式的 reCAPTCHA v3 設定
firebaseappcheck.recaptchaV3Config.update 更新應用程式的 reCAPTCHA v3 設定
firebaseappcheck.safetyNetConfig.get 擷取應用程式的 SafetyNet 設定
firebaseappcheck.safetyNetConfig.update 更新應用程式的 SafetyNet 設定
firebaseappcheck.services.get 擷取專案的服務強制執行設定
firebaseappcheck.services.update 更新專案的服務強制執行設定

Firebase 應用程式發布權限

權限名稱 說明
firebaseappdistro.releases.list 擷取現有發行清單和邀請連結
firebaseappdistro.releases.update 建立、刪除及修改發布內容
建立及刪除邀請連結
firebaseappdistro.testers.list 擷取專案中現有測試人員清單
firebaseappdistro.testers.update 在專案中建立及刪除測試人員
firebaseappdistro.groups.list 擷取專案中現有的測試人員群組清單
firebaseappdistro.groups.update 在專案中建立及刪除測試人員群組

Firebase 驗證權限

權限名稱 說明
firebaseauth.configs.create 建立驗證設定
firebaseauth.configs.get 擷取驗證設定
firebaseauth.configs.getHashConfig 取得使用者帳戶的密碼雜湊設定和密碼雜湊
firebaseauth.configs.getSecret 取得驗證設定中的用戶端密鑰
firebaseauth.configs.update 更新現有的驗證設定
firebaseauth.users.create 在驗證頁面中建立新使用者
firebaseauth.users.createSession 建立已登入使用者的工作階段 Cookie
firebaseauth.users.delete 在驗證頁面中刪除現有使用者
firebaseauth.users.get 擷取現有驗證使用者的清單
firebaseauth.users.sendEmail 傳送電子郵件給使用者
firebaseauth.users.update 更新驗證中現有的使用者

Firebase A/B 測試權限(Beta 版)

權限名稱 說明
firebaseabt.experimentresults.get 擷取實驗結果
firebaseabt.experiments.create 建立新實驗
firebaseabt.experiments.delete 刪除現有實驗
firebaseabt.experiments.get 擷取現有實驗的詳細資料
firebaseabt.experiments.list 擷取現有實驗清單
firebaseabt.experiments.update 更新現有實驗
firebaseabt.projectmetadata.get 擷取用來設定實驗的數據分析中繼資料

Firebase 應用程式託管權限(Beta 版)

權限名稱 說明
firebaseapphosting.Backend.create 為 Firebase 專案建立新的 App 託管後端。
firebaseapphosting.Backend.delete 從 Firebase 專案中刪除現有的 App Hosting 後端。
firebaseapphosting.Backend.get 擷取 Firebase 專案中特定應用程式託管後端的相關資訊。
firebaseapphosting.Backend.list 列出 Firebase 專案中所有可用的 App Hosting 後端。
firebaseapphosting.Backend.update 修改現有應用程式代管後端的配置或設定。
firebaseapphosting.builds.create 為 Firebase 專案中的 App 託管後端啟動新的建構程序。
firebaseapphosting.builds.delete 刪除 App Managed 後端中的現有版本。
firebaseapphosting.builds.get 在應用程式代管後端擷取現有建構作業的詳細資料。
firebaseapphosting.builds.list 列出 Firebase 專案中的應用程式託管後端相關聯的所有建構作業。
firebaseapphosting.builds.update 修改現有未經最終的應用程式託管版本的設定。
firebaseapphosting.domains.create 為 Firebase 專案中的應用程式託管後端建立新的網域關聯。
firebaseapphosting.domains.delete 從 App Managed 後端移除網域關聯。
firebaseapphosting.domains.get 擷取與 App 託管網站相關聯的特定網域資訊。
firebaseapphosting.domains.list 列出與應用程式代管服務相關聯的所有網域。
firebaseapphosting.domains.update 修改已連結至 App Hosting 後端的網域設定或設定。
firebaseapphosting.rollouts.create 啟動新的推出作業,將現有版本升級為該應用程式代管後端目前使用的版本。
firebaseapphosting.rollouts.get 擷取特定 App Hosting 推出作業的相關資訊。
firebaseapphosting.rollouts.list 列出與 App 託管後端相關聯的所有推出作業。
firebaseapphosting.traffic.get 擷取 App 託管網站目前的流量拆分和推出政策。
firebaseapphosting.traffic.list 與 firebaseapphosting.traffic.get 的函式相同,但新增可在擁有這項權限的後端之間擷取清單的功能。
firebaseapphosting.traffic.update 修改應用程式託管後端目前的流量拆分和推出政策。

Cloud Firestore 權限

如需 Cloud Firestore 權限的清單和說明,請參閱 Google Cloud 說明文件

Cloud Storage 權限

如需 Cloud Storage 權限的清單和說明,請參閱 Google Cloud 說明文件

Firebase 安全性規則 (Cloud Firestore 和 Cloud Storage) 權限

權限名稱 說明
firebaserules.releases.create 建立版本
firebaserules.releases.delete 刪除版本
firebaserules.releases.get 擷取版本
firebaserules.releases.getExecutable 擷取版本的二進位執行檔酬載
firebaserules.releases.list 擷取版本清單
firebaserules.releases.update 更新版本的規則集參照
firebaserules.rulesets.create 建立新的規則集
firebaserules.rulesets.delete 刪除現有的規則集
firebaserules.rulesets.get 擷取含有來源的規則集
firebaserules.rulesets.list 搜尋規則集中繼資料 (無來源)
firebaserules.rulesets.test 測試來源是否正確

Cloud Functions for Firebase 權限

如需 Cloud Functions 權限的清單和說明,請參閱 IAM 說明文件

請注意,部署函式需要的特定權限設定,沒有包含在標準 Firebase 預先定義角色中。如要部署函式,請使用下列其中一個選項:

Firebase 通訊廣告活動權限

這些權限適用於 Firebase 雲端通訊和 Firebase 應用程式內通訊的廣告活動。

權限名稱 說明
firebasemessagingcampaigns.campaigns.create 建立新廣告活動
firebasemessagingcampaigns.campaigns.delete 刪除現有廣告活動
firebasemessagingcampaigns.campaigns.get 擷取現有廣告活動的詳細資料
firebasemessagingcampaigns.campaigns.list 擷取現有廣告活動的清單
firebasemessagingcampaigns.campaigns.update 更新現有廣告活動
firebasemessagingcampaigns.campaigns.start 現有廣告活動
firebasemessagingcampaigns.campaigns.stop 更新現有廣告活動

Firebase 雲端通訊權限

權限名稱 說明
cloudmessaging.messages.create 透過 FCM HTTP API 和 Admin SDK 傳送通知和資料訊息
權限名稱 說明
firebasenotifications.messages.create 在通知編輯器中建立新訊息
firebasenotifications.messages.delete 在通知編輯器中刪除現有訊息
firebasenotifications.messages.get 在通知編輯器中擷取現有訊息的詳細資料
firebasenotifications.messages.list 在通知編輯器中擷取現有訊息的清單
firebasenotifications.messages.update 在通知編輯器中更新現有訊息

Firebase Crashlytics 權限

權限名稱 說明
firebasecrashlytics.config.get 擷取 Crashlytics 配置設定
firebasecrashlytics.config.update 更新 Crashlytics 配置設定
firebasecrashlytics.data.get 擷取與 Crashlytics 問題和工作階段相關的指標
firebasecrashlytics.issues.get 擷取 Crashlytics 問題的詳細資料,包括附上問題的附註
firebasecrashlytics.issues.list 擷取 Crashlytics 問題清單
firebasecrashlytics.issues.update 開啟、關閉及忽略現有的 Crashlytics 問題
更新附加問題的附註
firebasecrashlytics.sessions.get 擷取 Crashlytics 當機工作階段的詳細資料
權限名稱 說明
firebasecrash.issues.update 更新現有的 Crashlytics 問題、建立問題附註,以及設定當機風險驟升快訊
firebasecrash.reports.get 擷取現有的 Crashlytics 報表
權限名稱 說明
firebasedynamiclinks.domains.create 建立新的 Dynamic Links 網域
firebasedynamiclinks.domains.delete 刪除現有的 Dynamic Links 網域
firebasedynamiclinks.domains.get 擷取現有 Dynamic Links 網域的詳細資料
firebasedynamiclinks.domains.list 擷取現有 Dynamic Links 網域清單
firebasedynamiclinks.domains.update 更新現有的 Dynamic Links 網域
firebasedynamiclinks.links.create 建立新的 Dynamic Links
firebasedynamiclinks.links.get 擷取現有 Dynamic Links 詳細資料
firebasedynamiclinks.links.list 擷取現有 Dynamic Links 清單
firebasedynamiclinks.links.update 更新現有的 Dynamic Links
firebasedynamiclinks.stats.get 擷取 Dynamic Links 統計資料
firebasedynamiclinks.destinations.list 擷取現有的 Dynamic Links 目的地
firebasedynamiclinks.destinations.update 更新現有的 Dynamic Links 目的地

Firebase Extensions 發布權限

權限名稱 說明
firebaseextensionspublisher.extensions.create 上傳新版擴充功能
firebaseextensionspublisher.extensions.delete 刪除或淘汰擴充功能版本
firebaseextensionspublisher.extensions.get 擷取擴充功能版本的詳細資料
firebaseextensionspublisher.extensions.list 列出這個發布商專案上傳的所有擴充功能版本

Firebase 託管權限

權限名稱 說明
firebasehosting.sites.create 為 Firebase 專案建立新的託管資源
firebasehosting.sites.delete 刪除 Firebase 專案現有的託管資源
firebasehosting.sites.get 擷取 Firebase 專案現有代管資源的詳細資料
firebasehosting.sites.list 擷取 Firebase 專案的代管資源清單
firebasehosting.sites.update 更新 Firebase 專案現有的託管資源

Firebase 應用程式內通訊權限 (Beta 版)

權限名稱 說明
firebaseinappmessaging.campaigns.create 建立新廣告活動
firebaseinappmessaging.campaigns.delete 刪除現有廣告活動
firebaseinappmessaging.campaigns.get 擷取現有廣告活動的詳細資料
firebaseinappmessaging.campaigns.list 擷取現有廣告活動的清單
firebaseinappmessaging.campaigns.update 更新現有廣告活動

Firebase ML 權限 (Beta 版)

權限名稱 說明
firebaseml.models.create 建立新的機器學習模型
firebaseml.models.update 更新現有的機器學習模型
firebaseml.models.delete 刪除現有的機器學習模型
firebaseml.models.get 擷取現有機器學習模型的詳細資料
firebaseml.models.list 擷取現有機器學習模型的清單
firebaseml.modelversions.create 建立新的模型版本
firebaseml.modelversions.get 擷取現有模型版本的詳細資料
firebaseml.modelversions.list 擷取現有模型版本的清單
firebaseml.modelversions.update 更新現有的模型版本

Firebase Performance Monitoring 權限

權限名稱 說明
firebaseperformance.config.create 建立新的問題門檻設定
firebaseperformance.config.delete 刪除現有的問題門檻設定
firebaseperformance.config.update 修改快訊和現有的問題門檻設定
firebaseperformance.data.get 查看所有成效資料和問題閾值

Firebase 即時資料庫權限

權限名稱 說明
firebasedatabase.instances.create 建立新的資料庫執行個體
firebasedatabase.instances.get 擷取現有資料庫執行個體的中繼資料
現有資料庫執行個體資料的唯讀存取權
firebasedatabase.instances.list 擷取現有資料庫執行個體的清單
firebasedatabase.instances.update 具備現有資料庫執行個體資料的完整讀取和寫入權限
啟用及停用資料庫執行個體
擷取及修改現有資料庫執行個體的安全性規則
firebasedatabase.instances.disable 停用使用中的資料庫執行個體

系統會保留現有資料,但無法進行讀取/寫入作業。
firebasedatabase.instances.reenable 重新啟用已停用的資料庫執行個體

您可以再次存取讀取/寫入的現有資料,
firebasedatabase.instances.delete 刪除已停用的資料庫執行個體

您無法重複使用已刪除的資料庫名稱。
刪除的資料庫執行個體中的資料會在 20 天後永久刪除。
firebasedatabase.instances.undelete 在資料庫執行個體遭到永久刪除之前取消刪除

所刪除的資料庫執行個體中的資料會在刪除 20 天後永久刪除。

Firebase 遠端設定權限

權限名稱 說明
cloudconfig.configs.get 擷取遠端設定資料
cloudconfig.configs.update 更新遠端設定資料

Firebase Test Lab 權限

Test Lab 需要 Cloud Storage 值區的存取權,因此需要特定的權限設定,但除了標準 Firebase 預先定義角色的一部分,還需要其他權限設定。如要授予 Test Lab 存取權,請使用下列其中一個選項:

  • 從 Firebase 控制台啟動的測試

    • 在專屬的 Firebase 專案中測試應用程式。

    • 新增需要 Test Lab 存取權的成員,然後使用 Firebase 控制台將舊版專案角色指派給他們。

      • 如要允許成員使用 Test Lab 執行測試,請指派專案「Editor」以上級別。
      • 如要允許成員在 Test Lab 中查看測試結果,請指派專案 檢視者以上。
  • 測試透過 gcloud CLITesting APIGradle 管理的裝置 (同時使用您自己的 Cloud Storage 值區) 啟動的測試

    • 使用 Google Cloud 控制台指派一對預先定義的角色 (同時授予必要的權限組合)。

      • 如要允許成員使用 Test Lab 執行測試,請指派兩項:

        • Firebase Test Lab 管理員 (roles/cloudtestservice.testAdmin)
        • Firebase Analytics 檢視者 (roles/firebase.analyticsViewer)
      • 如要讓成員在 Test Lab 中查看測試結果,請同時指派兩項:

        • Firebase Test Lab 檢視者 (roles/cloudtestservice.testViewer)
        • Firebase Analytics 檢視者 (roles/firebase.analyticsViewer)
權限名稱 說明
cloudtestservice.environmentcatalog.get 擷取專案支援的測試環境目錄
cloudtestservice.matrices.create 要求根據指定的規格執行測試矩陣
cloudtestservice.matrices.get 擷取測試矩陣的狀態
cloudtestservice.matrices.update 更新未完成的測試矩陣
cloudtoolresults.executions.list 擷取歷史記錄的執行清單
cloudtoolresults.executions.get 擷取現有的執行作業
cloudtoolresults.executions.create 建立新的執行作業
cloudtoolresults.executions.update 更新現有的執行作業
cloudtoolresults.histories.list 擷取歷史記錄清單
cloudtoolresults.histories.get 擷取現有記錄
cloudtoolresults.histories.create 建立新記錄
cloudtoolresults.settings.create 建立新的工具結果設定
cloudtoolresults.settings.get 擷取現有工具結果設定
cloudtoolresults.settings.update 更新工具結果設定
cloudtoolresults.steps.list 擷取執行作業的步驟清單
cloudtoolresults.steps.get 擷取現有步驟
cloudtoolresults.steps.create 建立新步驟
cloudtoolresults.steps.update 更新現有步驟

與外部服務權限整合

權限名稱 說明
firebaseextensions.configs.create 為外部服務建立新的擴充功能設定
(「Firebase 控制台」>「專案設定」>「整合」)
firebaseextensions.configs.delete 刪除外部服務的現有擴充功能設定
(「Firebase 控制台」>「專案設定」>「整合」)
firebaseextensions.configs.list 擷取外部服務的擴充功能設定清單
(「Firebase 控制台」>「專案設定」>「整合」)
firebaseextensions.configs.update 更新外部服務的現有擴充功能設定
(依序點選「Firebase 控制台」>「專案設定」>「整合」)