Проверяйте Firebase с правилами, когда данные записываются firebase-admin - PullRequest
0 голосов
/ 02 июня 2018

Насколько я понимаю, учетная запись по умолчанию, используемая с admin.initializeApp(), имеет привилегию редактора, которая игнорирует все правила проверки и разрешения

Я что-то упустил?Кажется бессмысленным иметь учетную запись службы по умолчанию (т.е. серверные процессы, пишущие в Firebase) вообще обходить правила при записи в Firebase.Тем более, что это задокументировано способом в примерах и в документах, и что симулятор правил дает нулевое указание, что эти правила будут не применяться на определенных учетных записях

Мой контекст - это облачная функциякоторые возвращают что-то обратно в Firebase, и я хочу иметь возможность проверить это с помощью .validate

1 Ответ

0 голосов
/ 02 июня 2018

Как вы уже обнаружили, Firebase Admin SDK работает с правами администратора, что обходит все правила безопасности.Из документации о начале работы с Firebase Admin SDK :

Admin SDK позволяет вам взаимодействовать с Firebase из привилегированных сред для выполнения таких действий, как:

  • Чтение и запись данных базы данных реального времени с полными правами администратора.

Логика здесь заключается в том, что ваш код, использующий Admin SDK, работает в доверенной среде, где вы можете доверять этому коду.это то, что вы написали, и поэтому работаете в соответствии с вашей спецификацией.

В настоящее время невозможно использовать Admin SDK, а также применять правила безопасности.Я предлагаю вам подать запрос функции .

Обратите внимание, что то, что вы хотите , возможно с базой данных реального времени, как показано в Аутентификация с ограниченными правами .

Для Firestore вы можете контролировать часть доступа в консоли Cloud Identity and Access Management.См. документацию по защите ваших данных .

...