web-dev-qa-db-fra.com

Hébergement Firebase - site Web protégé par mot de passe?

Je viens de déployer un site Web sur l'hébergement Firebase et cela fonctionne très bien - la configuration a été super facile.

Ma question est, cependant, existe-t-il un moyen de rendre l'accès au site Web limité par l'authentification? C'est un panneau d'administration auquel seule mon équipe devrait pouvoir accéder. Existe-t-il un moyen de protéger par mot de passe ou de privatiser mon site Web hébergé sur Firebase?

Merci!

24
ryangineer

Ce n'est pas possible à l'heure actuelle, bien qu'il s'agisse d'une demande de fonctionnalité populaire. Nous avons quelques idées sur la façon dont nous pourrions aborder quelque chose comme ça, mais rien à annoncer pour le moment.

18
Michael Bleigh

Tard dans la fête, mais a rencontré un problème similaire en voulant créer un tableau de bord disponible uniquement pour les utilisateurs de notre domaine (mais sans vouloir gérer des comptes individuels).

J'ai fini par utiliser le flux d'authentification Google standard, mais en restreignant l'accès aux données via les règles de base de données. Pour voir si un utilisateur est autorisé, nous essayons d'accéder aux données directement après la connexion (et avant de faire rapport à l'utilisateur). S'il échoue pour des raisons d'authentification, notre utilisateur est un étranger.

Règle de base de données Firebase:

{
  "rules": {
    ".read": "auth.token.email_verified == true && auth.token.email.matches(/.*@ourdomain.org$/)",
    ".write": false
  }
}

Voir https://firebase.google.com/docs/reference/security/database/

Remarque: cela a certainement été facilité par le fait que notre organisation exécute notre courrier via gsuite, mais vous pouvez facilement définir des règles plus granulaires lorsque cette option n'est pas disponible.

6
som

Le moyen le plus simple de résoudre ce problème pour moi était de déplacer mon application de Firebase vers AWS Amplify. Il vous permet de protéger l'application par mot de passe. Sous contrôle d'accès, changez-le de "Visualisable publiquement" en "restreint". Si vous recherchez une fonctionnalité similaire mais à mon avis plus robuste que l'authentification Firebase, intégrez AWS cognito dans votre application; avec AWS cognito, vous pouvez empêcher les inscriptions de nouveaux utilisateurs et restreindre les e-mails de nouveaux utilisateurs à des domaines spécifiques parmi d'autres fonctionnalités.

1
Jorge Correa