Firestore API ключ в расширении - PullRequest
0 голосов
/ 11 декабря 2018

Я делаю расширение для Chrome.

Расширение создает уникальный код, соответствующий URL-адресу, предоставленному пользователем.

Я записываю этот URL-адрес и uID в свою базу данных Firestore,

var url = document.getElementById("url").value;
var uID = randomID();
db.collection("links").doc(uID).set({
url: url
})

Но теперь каждый, у кого есть мой API-ключ (который хранится в простом файле JS), может записывать в базу данных, и мне нужно расширение, чтобы иметь возможность записи в базу данных.

Есть ли способ защиты базы данных для расширения Chrome?

1 Ответ

0 голосов
/ 11 декабря 2018

Есть несколько способов защитить вашу базу данных.Во-первых, вы должны заставить свой плагин требовать некоторую форму аутентификации в Firebase / Firestore.

https://firebase.google.com/docs/auth/web/start

Это сделало бы пользователей вашего плагина не подключающимися анонимно.Затем вы можете применить правила к вашему Firestore для защиты данных там, где это необходимо.

Если вы используете API идентификации Chrome, вы можете использовать Google ID своих пользователей.Вот то, что похоже на солидный пример расширения, демонстрирующего процесс.

https://github.com/firebase/quickstart-js/tree/master/auth/chromextension

В нашей работе используйте функциональность пользовательских токенов, которую предлагает Firebase, чтобы мы могли использовать нашего собственного провайдера идентификации,который тоже отлично работает, если вам это нужно.

Придерживайтесь документов, они объясняют это довольно хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...