Ho una piccola webapp Firebase personale che utilizza il database Firebase. Voglio proteggere (bloccare) questa app per qualsiasi utente da un singolo dominio specifico. Voglio autenticarsi con Google. Non sono chiaro come configurare le regole per dire "solo gli utenti di un singolo dominio specifico (ad esempio @foobar.com
) possono leggere e scrivere su questo database".Come posso bloccare Firebase Database a qualsiasi utente da un dominio (email) specifico?
(Parte del problema che vedo: è difficile eseguire il bootstrap di un database con informazioni sufficienti per far funzionare questo caso. Devo conoscere l'email dell'utente al momento dell'autenticazione, ma l'oggetto auth
non contiene email Sembra essere un problema uovo di gallina, perché ho bisogno di scrivere le regole di Firebase che fanno riferimento ai dati nel database, ma quei dati non esistono ancora perché il mio utente non può scrivere nel database.)
Se l'email auth
fosse stata inviata, potrei scrivere facilmente le regole.
Grazie in anticipo!
domanda: quando si dice bloccare da un singolo dominio, vuol dire bloccare fino a un singolo fornitore, come Google o ha letteralmente significa solo permette agli utenti di myDomain di accedere al tuo Firebase cioè test @ myDomain autenticato per password è ok, ma la cosa @ anotherDomain autenticata tramite google non è consentita. – Jay
Voglio dire, "chiunque da @ foobar.com, come convalidato/autenticato da Google, può leggere e scrivere il database" –
Hai davvero bisogno di una regola? A un certo punto l'utente deve inserire il proprio indirizzo email per poter accedere o creare il proprio account in primo luogo, quindi non è possibile analizzarlo al momento dell'inserimento e rifiutare ciò che non ha @ foobar.com come il dominio? – Jay