Firebase API в JavaScript и, следовательно, publi c, забота об Auth? - PullRequest
0 голосов
/ 10 июля 2020

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

createUserWithEmailAndPassword / signInWithEmailAndPassword / sendEmailVerification

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

    service cloud.firestore {
   match /databases/{database}/documents {
    function isSignedIn() {
      return request.auth != null;
    }
    match /clubs/{club}
    {
       allow write: if isSignedIn();
       allow read: if true;
    }
}

Вот что я сделал. Я добавил роль в список пользователей, и список пользователей не доступен для записи никому, кроме моих внутренних процессов, которые обходят правила.

Таким образом, хотя злоумышленники могут создавать учетные записи и входить в систему, они могут никогда не отдавайте себе самые важные роли. Это по-прежнему оставляет мне 2 проблемы: во-первых, это просто не совсем правильно :-), во-вторых, как я узнаю, какие учетные записи являются действительными людьми, пытающимися подписаться на мое приложение, а какие - поддельными. Те, которые действительны, нуждаются в обновлении их ролей в серверной части. Сейчас, когда у меня около 5 пользователей моего приложения, это нормально (ха-ха), но как люди справляются с этим в более объемном приложении?

Я ценю, что вы нашли время, чтобы прочитать это, и я ценю любые мысли и / или предложение, которое может у вас быть.

1 Ответ

0 голосов
/ 10 июля 2020

, если вам нужен более детальный контроль над вашими ролями, вы можете проверить настраиваемые утверждения

Кроме того, есть несколько сообщений, в которых рассказывается несколько шаблонов, посмотрите:

там достаточно информации, чтобы вы начали.

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