2015-08-01 4 views
0

Je souhaite activer l'authentification par mot de passe & sur ma base de données Firebase. Cependant, je veux aussi créer des comptes et authentifier strictement les utilisateurs sur le serveur plutôt que sur le client. Puis-je simplement définir ".read" sur false pour empêcher les clients de créer eux-mêmes des comptes? Ou aurais-je besoin d'utiliser une authentification personnalisée?Les règles de sécurité Firebase affectent-elles la création et l'authentification du compte utilisateur?

+0

La création d'informations d'identification consiste simplement à créer une entrée clé/valeur dans un hachage avec un e-mail et un mot de passe bcrypté. Il n'y a pas de mal ici. Pour "créer strictement des comptes", il suffit de configurer des règles de sécurité pour autoriser uniquement l'accès aux utilisateurs existants() dans un chemin donné. Vous écrivez les utilisateurs enregistrés là. Les creds ne blessent rien et n'accordent rien sans votre consentement. – Kato

+0

OK. Je pense que je comprends. Je garde une trace des utilisateurs qui se sont inscrits légitimement (via mon API). Ensuite, je peux écrire mes règles de sécurité en fonction de cela. –

Répondre

1

Vous ne pouvez pas restreindre la création d'e-mail & Comptes de mot de passe sur Firebase. Vous ne pouvez limiter que les données que les utilisateurs peuvent lire et écrire. Un compte d'utilisateur qui n'a aucun accès en lecture/écriture à des données est plutôt inutile.

Avec l'authentification personnalisée, vous pourriez en effet tout simplement ne pas frapper un JWT pour les utilisateurs pour lesquels vous ne voulez pas créer un compte. Mais comme dit: cela n'améliore pas la sécurité des données, cela signifie simplement que ces utilisateurs recevront un message de type "vous n'avez pas de compte" au lieu de "vous n'avez pas accès à ces données".