2016-08-30 1 views
1

Может ли кто-нибудь получить учетные данные Firebase из моего APK и использовать их? Этого можно предотвратить, добавив SHA-1 ключи для Android?Может ли кто-нибудь получить учетные данные Firbase из моего apk и использовать их?

Если это предотвращено, для чего мне нужны правила безопасности, поскольку только код из моего приложения с моим SHA-1 может вообще манипулировать базой данных?

Если это не предотвращено, может ли кто-либо использовать мою базу данных Firebase, если его запросы соответствуют правилам безопасности? (Write 2-й клиент, который на самом деле не может делать плохие вещи, но не должно быть разрешено на всех.)

Я не знаю, как я должен думать о правилах безопасности:

A) Защита данных от несанкционированного доступа и манипуляций с плохими парнями + B?

B) Просто набор правил для хранения данных в определенном состоянии и предотвращения выполнения моим программным обеспечением недопустимого запроса базы данных?

ответ

1

Мы не отправляем секретную базу данных реального времени (или любой другой секретный материал) в файл json, который запекается в вашем приложении. Этот файл просто содержит идентификаторы ресурсов, которые позволяют нам узнать, какие ресурсы (база данных, ведро хранилища, аналитика и т. Д.) Должны быть надлежащим образом аутентифицированы (для этих целей мы используем Firebase Authentication), и мы обрабатываем авторизацию на стороне сервера, чтобы обеспечить правильную регистрацию пользователей в.

Если вы авторизуете свои запросы должным образом (например, с помощью Firebase Realtime Database Rules), ваши данные будут безопасными!

Я бы рекомендовал посмотреть The Key to Firebase Security, один из наших переговоров о вводе/выводе, в котором более подробно рассказывается о том, как это работает.

1

Доступ к базе данных Firebase можно получить через API REST или любую из клиентских библиотек. Решение о том, может ли клиент или не может что-то сделать, целиком основано на правилах.

Вы даже можете получить доступ к URL-адресу базы данных в веб-браузере и увидеть ответ JSON, положив .json на конец, например. https://[YOUR_PROJECT_ID].firebaseio.com/.json

Таким образом, ответ определенно B! Правила по умолчанию в новом проекте Firebase заключаются в том, что чтение и запись в базу данных требуют авторизации, но вы можете настроить их для обеспечения любых уровней защиты, в которых вы нуждаетесь.

Взгляните на Database Rules quickstart, чтобы увидеть, что вы можете сделать!