權限透過角色授予您的專案成員。角色是權限的集合。將角色指派給專案成員時,您將授予該專案成員該角色所包含的所有權限。
本頁面介紹了 Firebase 支援的角色中可能列出的權限所啟用的操作。這些權限分為兩類:
Firebase 中所有角色或特定操作所需的身分和存取管理 (IAM) 權限
所需權限
Firebase IAM 包含以下權限:
有關 Firebase 產品或服務特定的權限的一般清單和說明,請參閱Firebase 產品的 IAM 權限中的相應部分。
所有角色都包含所需的權限
使用任何 Firebase 產品或服務都需要下表中列出的權限。
這些權限會自動包含在每個Firebase 預先定義角色中。
允許 | 描述 |
---|---|
授予檢索 Firebase 專案資訊的權限 | |
授予檢索 Firebase 專案資訊的權限 | |
授予檢查 Google API 狀態和執行 Firebase CLI 命令的權限 |
Firebase 服務特定操作所需的權限
執行某些 Firebase 服務特定的操作需要下表中所列的權限。
當需要時,這些權限會自動包含在每個Firebase 預先定義角色中。
行動 | 所需許可 |
---|---|
使用協作工具(包括 Slack、Jira 和 PagerDuty)存取 Firebase 專案集成 | firebaseextensions.configs.* |
從 StackDriver 查看使用情況和分析 | 監控.timeSeries.list |
運行Firebase CLI命令 有關更多信息,請參閱有關運行時配置器訪問的Google Cloud 文件。 | 運行時配置.* |
Firebase 管理特定操作所需的權限
下表列出的權限是執行某些 Firebase 管理特定操作所需的附加權限。
管理權限及相關操作 | 需要額外的權限 |
---|---|
firebase.billingPlans.update | |
更改 Firebase 專案的結算計劃 | resourcesmanager.projects.createBillingAssignment resourcesmanager.projects.deleteBillingAssignment |
firebase.projects.delete | |
刪除 Firebase 項目 | 資源管理器.項目.刪除 |
firebase.projects.update | |
將 Firebase 資源新增至現有 Google Cloud 項目 | 資源管理器.projects.get serviceusage.services.enable serviceusage.services.get |
更改 Firebase 專案的名稱 | 資源管理器.專案.更新 |
為 Android 應用程式新增 SHA 憑證指紋 | clientauthconfig.clients.create |
刪除 Android 應用程式的 SHA 憑證指紋 | clientauthconfig.clients.刪除 |
更新 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.刪除 | 從項目中刪除現有應用程式 |
firebase.clients.get | 檢索專案中應用程式的詳細資訊和配置 |
firebase.clients.list | 檢索項目中的應用程式列表 |
firebase.clients.undelete | 在永久刪除資料之前取消刪除已刪除的應用程式 |
firebase.clients.update | 更新專案中應用程式的詳細資訊和配置 |
firebase.links.create | 建立指向 Google 系統的新鏈接 (Firebase 控制台 > 專案設定 > 整合) |
firebase.links.刪除 | 刪除指向 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 以及與該安裝相關的資料(了解更多) |
谷歌分析權限
以下權限授予連結到 Firebase 專案的 Analytics 媒體資源的存取權限。它們允許 Firebase 專案成員存取 Analytics 數據,包括受眾群體、使用者屬性、管道、報告、轉換等。
權限名稱 | 描述 |
---|---|
firebaseanalytics.resources.googleAnalytics編輯 | 預設情況下,將分析編輯者角色授予連結的分析媒體資源 |
firebaseanalytics.resources.googleAnalyticsAdditionalAccess | 預設情況下,將 Analytics 行銷人員角色授予連結的 Analytics 媒體資源 |
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze | 預設情況下,將分析查看者角色授予連結的分析媒體資源 |
firebaseanalytics.resources.googleAnalyticsRestrictedAccess | 預設情況下,向連結的 Analytics 媒體資源授予分析查看者角色,但無法存取收入數據和成本數據 |
Firebase 應用程式檢查權限
權限名稱 | 描述 |
---|---|
firebaseappcheck.appAttestConfig.get | 檢索應用程式的應用程式認證配置 |
firebaseappcheck.appAttestConfig.update | 更新應用程式的應用程式認證配置 |
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.user.create | 在身份驗證中建立新用戶 |
firebaseauth.users.createSession | 為登入使用者建立會話cookie |
firebaseauth.users.delete | 刪除身份驗證中的現有用戶 |
firebaseauth.user.get | 檢索現有身分驗證使用者的列表 |
firebaseauth.users.sendEmail | 向使用者發送電子郵件 |
firebaseauth.user.update | 更新身份驗證中的現有用戶 |
Firebase A/B 測試權限(測試版)
權限名稱 | 描述 |
---|---|
firebaseabt.experimentresults.get | 檢索實驗結果 |
firebaseabt.experiments.create | 創建新實驗 |
firebaseabt.experiments.delete | 刪除現有實驗 |
firebaseabt.experiments.get | 檢索現有實驗的詳細信息 |
firebaseabt.experiments.list | 檢索現有實驗的列表 |
firebaseabt.experiments.update | 更新現有實驗 |
firebaseabt.projectmetadata.get | 檢索分析元資料以設定實驗 |
Cloud Firestore 權限
有關 Cloud Firestore 權限的清單和說明,請參閱Google Cloud 文件。
雲端儲存權限
有關 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 | 測試來源的正確性 |
Firebase 權限的雲端功能
有關 Cloud Functions 權限的清單和說明,請參閱IAM 文件。
請注意,功能的部署需要特定的權限配置,這些權限不包含在標準Firebase 預先定義角色中。若要部署功能,請使用下列選項之一:
將功能部署委託給專案擁有者。
如果您僅部署非 HTTP 函數,則專案編輯器可以部署您的函數。
將功能部署委託給具有以下兩個角色的專案成員:
- 雲端函數管理員角色 (
roles/cloudfunctions.admin
) - 服務帳號使用者角色 (
roles/iam.serviceAccountUser
)
專案擁有者可以使用 Google Cloud Console 或 gcloud CLI將這些角色指派給專案成員。有關此角色配置的詳細步驟和安全性影響,請參閱IAM 文件。
- 雲端函數管理員角色 (
Firebase 訊息傳遞活動權限
這些權限適用於 Firebase Cloud Messaging 和 Firebase In-App Messaging 的行銷活動。
權限名稱 | 描述 |
---|---|
firebasemessagingcampaigns.campaigns.create | 創造新的行銷活動 |
firebasemessagingcampaigns.campaigns.delete | 刪除現有的廣告活動 |
firebasemessagingcampaigns.campaigns.get | 檢索現有活動的詳細信息 |
firebasemessagingcampaigns.campaigns.list | 檢索現有活動的列表 |
firebasemessagingcampaigns.campaigns.update | 更新現有活動 |
firebasemessagingcampaigns.campaigns.start | 啟動現有活動 |
firebasemessagingcampaigns.campaigns.stop | 更新現有活動 |
Firebase 雲端訊息傳遞權限
權限名稱 | 描述 |
---|---|
雲端訊息.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 報告 |
Firebase 動態連結權限
權限名稱 | 描述 |
---|---|
firebasedynamiclinks.domains.create | 建立新的動態連結網域 |
firebasedynamiclinks.domains.delete | 刪除現有的動態連結網域 |
firebasedynamiclinks.domains.get | 檢索現有動態連結域的詳細信息 |
firebasedynamiclinks.domains.list | 檢索現有動態連結網域的列表 |
firebasedynamiclinks.domains.update | 更新現有動態連結網域 |
firebasedynamiclinks.links.create | 建立新的動態鏈接 |
firebasedynamiclinks.links.get | 檢索現有動態連結的詳細信息 |
firebasedynamiclinks.links.list | 檢索現有動態連結的列表 |
firebasedynamiclinks.links.update | 更新現有的動態鏈接 |
firebasedynamiclinks.stats.get | 檢索動態連結統計訊息 |
firebasedynamiclinks.destinations.list | 檢索現有的動態連結目標 |
firebasedynamiclinks.destinations.update | 更新現有動態連結目標 |
Firebase 擴充發布權限
權限名稱 | 描述 |
---|---|
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 應用程式內訊息傳遞權限(測試版)
權限名稱 | 描述 |
---|---|
firebaseinappmessaging.campaigns.create | 創造新的行銷活動 |
firebaseinappmessaging.campaigns.delete | 刪除現有的廣告活動 |
firebaseinappmessaging.campaigns.get | 檢索現有活動的詳細信息 |
firebaseinappmessaging.campaigns.list | 檢索現有活動的列表 |
firebaseinappmessaging.campaigns.update | 更新現有活動 |
Firebase ML 權限(測試版)
權限名稱 | 描述 |
---|---|
firebaseml.models.create | 建立新的機器學習模型 |
firebaseml.models.update | 更新現有的機器學習模型 |
firebaseml.models.刪除 | 刪除現有的機器學習模型 |
firebaseml.models.get | 檢索現有 ML 模型的詳細信息 |
firebaseml.models.list | 檢索現有 ML 模型的列表 |
firebaseml.modelversions.create | 建立新模型版本 |
firebaseml.modelversions.get | 檢索現有模型版本的詳細信息 |
firebaseml.modelversions.list | 檢索現有模型版本的列表 |
firebaseml.modelversions.update | 更新現有模型版本 |
Firebase 效能監控權限
權限名稱 | 描述 |
---|---|
firebaseperformance.config.create | 建立新的問題閾值配置 |
firebaseperformance.config.刪除 | 刪除現有問題閾值配置 |
firebaseperformance.config.更新 | 修改警報和現有問題閾值配置 |
firebaseperformance.data.get | 查看所有效能數據和問題閾值 |
Firebase 即時資料庫權限
權限名稱 | 描述 |
---|---|
firebaseddatabase.instances.create | 建立新的資料庫實例 |
firebaseddatabase.instances.get | 檢索現有資料庫實例的元數據 對現有資料庫實例中的資料的唯讀訪問 |
firebaseddatabase.instances.list | 檢索現有資料庫實例的列表 |
firebaseddatabase.instances.update | 對現有資料庫實例中資料的完全讀寫存取權限 啟用和停用資料庫實例 檢索並修改現有資料庫實例的安全性規則 |
firebaseddatabase.instances.停用 | 禁用活動資料庫實例 現有資料將被保留,但無法進行讀取/寫入存取。 |
firebaseddatabase.instances.reenable | 重新啟用已停用的資料庫實例 現有資料再次可供讀/寫存取。 |
firebaseddatabase.instances.delete | 刪除禁用的資料庫實例 已刪除的資料庫名稱無法重複使用。 已刪除的資料庫實例中的資料將在 20 天後永久刪除。 |
firebaseddatabase.instances.undelete | 在永久刪除資料之前取消刪除已刪除的資料庫實例 刪除的資料庫實例中的資料將在實例刪除20天後永久刪除。 |
Firebase 遠端配置權限
權限名稱 | 描述 |
---|---|
cloudconfig.configs.get | 檢索遠端配置數據 |
cloudconfig.configs.更新 | 更新遠端配置數據 |
Firebase 測試實驗室權限
測試實驗室需要存取 Cloud Storage 儲存桶,因此需要特定的權限配置,而這些權限並未全部包含在標準Firebase 預定義角色中。若要授予對測試實驗室的存取權限,請使用下列選項之一:
對於從 Firebase 控制台啟動的測試
在專用的單獨 Firebase 專案中測試您的應用程式。
新增需要測試實驗室存取權限的成員,然後使用Firebase 控制台為他們指派舊專案角色。
- 若要允許成員使用測試實驗室執行測試,請指定專案編輯者或更高等級。
- 若要允許成員在測試實驗室中查看測試結果,請指定專案檢視者或更高等級。
對於使用您自己的 Cloud Storage 儲存桶時從gcloud CLI 、測試 API或Gradle 託管設備啟動的測試
使用Google Cloud Console指派一對預定義角色(共同授予所需的權限集)。
若要允許成員使用測試實驗室執行測試,請指派以下兩項:
- Firebase 測試實驗室管理員 (
roles/cloudtestservice.testAdmin
) - Firebase 分析檢視器 (
roles/firebase.analyticsViewer
)
- Firebase 測試實驗室管理員 (
若要允許成員在測試實驗室中查看測試結果,請指派以下兩項:
- Firebase 測試實驗室檢視器 (
roles/cloudtestservice.testViewer
) - Firebase 分析檢視器 (
roles/firebase.analyticsViewer
)
- Firebase 測試實驗室檢視器 (
權限名稱 | 描述 |
---|---|
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.history.list | 檢索歷史列表 |
cloudtoolresults.history.get | 檢索現有歷史記錄 |
cloudtoolresults.history.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.刪除 | 刪除外部服務的現有擴充配置 (Firebase 控制台 > 專案設定 > 整合) |
firebaseextensions.configs.list | 檢索外部服務的擴充配置列表 (Firebase 控制台 > 專案設定 > 整合) |
firebaseextensions.configs.update | 更新外部服務的現有擴充配置 (Firebase 控制台 > 專案設定 > 整合) |