Учетная запись службы Firebase для Firestore и Remote Config - PullRequest
1 голос
/ 26 сентября 2019

Я создал / разложил библиотеку сценариев Google Apps для управления Firebase Firestore и Firebase Remote Config под названием FirebaseGoogleAppsScript .Цель состоит в том, чтобы просто управлять содержимым ваших коллекций в скрипте приложений, а также обновлять удаленную конфигурацию.

Моя проблема в том, что я не могу заставить служебную учетную запись выполнять обе задачи.

Firebase создает две учетные записи службы при создании проекта:

  1. Первая указана в консоли Firebase -> Настройки проекта -> Учетные записи служб.Этот я использую в своих облачных функциях, чтобы получить удаленную конфигурацию просто отлично.Тем не менее, в проекте Apps Script он не может получить какие-либо данные из магазина.Я попытался добавить все виды ролей, в том числе Owner и Editor, но пока нет данных в хранилище, но я все еще могу получить RemoteConfig.

  2. Второй виден только в учетных записях службы GCP и имеет заголовок: Firebase Admin SDK Service Agent с ролями Firebase Admin SDK Administrator Service Agent и Service Account Token Creator.Это один способ получить все данные из хранилища в рамках проекта скриптов приложений.Однако в проекте сценария приложений я не могу заставить его получить RemoteConfig, даже если я добавлю роль Firebase Remote Config Admin.

Я также создал собственную учетную запись службы, которая смогла получить удаленную конфигурацию и почти все остальное из Firebase, кроме данных Firestore.Кажется, только одна учетная запись службы, созданная Firebase, может получить любые данные.

Чтобы воссоздать проблему, просто разверните мой проект lil FirebaseGoogleAppsScript и привяжите его к тому же проекту GCP, к которому подключен Firebase.В нем есть тестовый файл, который может воссоздать проблему, если у вас есть некоторые данные в RemoteConfig и коллекция под названием posts с некоторыми документами.

Какого черта здесь происходит?Почему я не могу создать учетную запись службы, которая может получить доступ к Firestore и RemoteConfig?Любые идеи о том, что нужно сделать, чтобы создать правильную роль, чтобы сделать оба?Мне действительно нужно использовать две отдельные учетные записи службы?

...