Regole di sicurezza Firebase
Usa le nostre regole di sicurezza Firebase flessibili ed estensibili per proteggere i tuoi dati in Cloud Firestore, Firebase Realtime Database e Cloud Storage.
Le regole di sicurezza di Firebase si frappongono tra i tuoi dati e gli utenti malintenzionati. Puoi scrivere regole semplici o complesse che proteggano i dati della tua app al livello di granularità richiesto dalla tua app specifica.
Le regole di sicurezza Firebase sfruttano linguaggi di configurazione estensibili e flessibili per definire a quali dati i tuoi utenti possono accedere per Realtime Database, Cloud Firestore e Cloud Storage. Le regole del database in tempo reale di Firebase sfruttano JSON nelle definizioni delle regole, mentre le regole di sicurezza di Cloud Firestore e le regole di sicurezza di Firebase per lo storage su cloud sfruttano un linguaggio unico creato per ospitare strutture specifiche di regole più complesse.
Scopri di più su come impostare le regole per i prodotti Firebase specifici che utilizzi nella tua app e su come il comportamento delle regole differisce tra i prodotti Firebase.
Capacità chiave
Flessibilità | Scrivi regole personalizzate che abbiano senso per la struttura e il comportamento della tua app. Le regole utilizzano linguaggi che consentono di sfruttare i propri dati per autorizzare l'accesso. |
Granularità | Le tue regole possono essere ampie o restrittive a seconda delle tue esigenze. |
Sicurezza indipendente | Poiché le regole sono definite al di fuori della tua app (nella console Firebase o nella CLI di Firebase), i client non sono responsabili dell'applicazione della sicurezza, i bug non compromettono i dati e i tuoi dati sono sempre protetti. |
Come funzionano?
Le regole di sicurezza di Firebase funzionano confrontando un modello con i percorsi del database e quindi applicando condizioni personalizzate per consentire l'accesso ai dati in quei percorsi. Tutte le regole nei prodotti Firebase hanno un componente di corrispondenza del percorso e un'istruzione condizionale che consente l'accesso in lettura o scrittura. Devi definire le regole per ogni prodotto Firebase che utilizzi nella tua app.
Per Cloud Firestore e Cloud Storage, le regole utilizzano la seguente sintassi:
service <<name>> {
// Match the resource path.
match <<path>> {
// Allow the request if the following conditions are true.
allow <<methods>> : if <<condition>>
}
}
Per il database in tempo reale, le regole basate su JSON utilizzano la seguente sintassi:
{
"rules": {
"<<path>>": {
// Allow the request if the condition for each method is true.
".read": <<condition>>,
".write": <<condition>>
}
}
}
Le regole vengono applicate come istruzioni OR
, non come istruzioni AND
. Di conseguenza, se più regole corrispondono a un percorso e una qualsiasi delle condizioni corrispondenti concede l'accesso, le regole concedono l'accesso ai dati in quel percorso. Pertanto, se una regola generale concede l'accesso ai dati, non è possibile limitare con una regola più specifica. Tuttavia, puoi evitare questo problema assicurandoti che le tue Regole non si sovrappongano troppo. Il flag delle regole di sicurezza Firebase si sovrappone nei percorsi corrispondenti come avvisi del compilatore.
Le regole di sicurezza di Firebase possono anche sfruttare l'autenticazione per concedere autorizzazioni basate sull'utente e le condizioni impostate possono essere molto semplici o incredibilmente complesse. Scopri di più sul linguaggio e sul comportamento delle regole prima di iniziare a scrivere le regole.
Percorso di attuazione
Integra gli SDK del prodotto | Configura Cloud Firestore , Cloud Storage o Realtime Database per la tua app. | |
Scrivi le tue regole di sicurezza Firebase | Scopri di più su come funzionano le regole e imposta alcune regole di base | |
Metti alla prova le tue regole di sicurezza Firebase | Usa gli emulatori Realtime Database e Cloud Firestore per testare il comportamento della tua app e convalidare le tue regole prima di distribuirle alla produzione. | |
Distribuisci le tue regole di sicurezza Firebase | Utilizza la console Firebase o l'interfaccia a riga di comando di Firebase per distribuire le regole alla produzione. |
Prossimi passi
- Comprendere il linguaggio delle regole di sicurezza di Firebase .
- Scopri di più su come funzionano le regole di sicurezza di Firebase .
- Esplora gli errori comuni che dovresti evitare .
Regole di sicurezza Firebase
Usa le nostre regole di sicurezza Firebase flessibili ed estensibili per proteggere i tuoi dati in Cloud Firestore, Firebase Realtime Database e Cloud Storage.
Le regole di sicurezza di Firebase si frappongono tra i tuoi dati e gli utenti malintenzionati. Puoi scrivere regole semplici o complesse che proteggano i dati della tua app al livello di granularità richiesto dalla tua app specifica.
Le regole di sicurezza Firebase sfruttano linguaggi di configurazione estensibili e flessibili per definire a quali dati i tuoi utenti possono accedere per Realtime Database, Cloud Firestore e Cloud Storage. Le regole del database in tempo reale di Firebase sfruttano JSON nelle definizioni delle regole, mentre le regole di sicurezza di Cloud Firestore e le regole di sicurezza di Firebase per lo storage su cloud sfruttano un linguaggio unico creato per ospitare strutture specifiche di regole più complesse.
Scopri di più su come impostare le regole per i prodotti Firebase specifici che utilizzi nella tua app e su come il comportamento delle regole differisce tra i prodotti Firebase.
Capacità chiave
Flessibilità | Scrivi regole personalizzate che abbiano senso per la struttura e il comportamento della tua app. Le regole utilizzano linguaggi che consentono di sfruttare i propri dati per autorizzare l'accesso. |
Granularità | Le tue regole possono essere ampie o restrittive a seconda delle tue esigenze. |
Sicurezza indipendente | Poiché le regole sono definite al di fuori della tua app (nella console Firebase o nella CLI di Firebase), i client non sono responsabili dell'applicazione della sicurezza, i bug non compromettono i dati e i tuoi dati sono sempre protetti. |
Come funzionano?
Le regole di sicurezza di Firebase funzionano confrontando un modello con i percorsi del database e quindi applicando condizioni personalizzate per consentire l'accesso ai dati in quei percorsi. Tutte le regole nei prodotti Firebase hanno un componente di corrispondenza del percorso e un'istruzione condizionale che consente l'accesso in lettura o scrittura. Devi definire le regole per ogni prodotto Firebase che utilizzi nella tua app.
Per Cloud Firestore e Cloud Storage, le regole utilizzano la seguente sintassi:
service <<name>> {
// Match the resource path.
match <<path>> {
// Allow the request if the following conditions are true.
allow <<methods>> : if <<condition>>
}
}
Per il database in tempo reale, le regole basate su JSON utilizzano la seguente sintassi:
{
"rules": {
"<<path>>": {
// Allow the request if the condition for each method is true.
".read": <<condition>>,
".write": <<condition>>
}
}
}
Le regole vengono applicate come istruzioni OR
, non come istruzioni AND
. Di conseguenza, se più regole corrispondono a un percorso e una qualsiasi delle condizioni corrispondenti concede l'accesso, le regole concedono l'accesso ai dati in quel percorso. Pertanto, se una regola generale concede l'accesso ai dati, non è possibile limitare con una regola più specifica. Tuttavia, puoi evitare questo problema assicurandoti che le tue Regole non si sovrappongano troppo. Il flag delle regole di sicurezza Firebase si sovrappone nei percorsi corrispondenti come avvisi del compilatore.
Le regole di sicurezza di Firebase possono anche sfruttare l'autenticazione per concedere autorizzazioni basate sull'utente e le condizioni impostate possono essere molto semplici o incredibilmente complesse. Scopri di più sul linguaggio e sul comportamento delle regole prima di iniziare a scrivere le regole.
Percorso di attuazione
Integra gli SDK del prodotto | Configura Cloud Firestore , Cloud Storage o Realtime Database per la tua app. | |
Scrivi le tue regole di sicurezza Firebase | Scopri di più su come funzionano le regole e imposta alcune regole di base | |
Metti alla prova le tue regole di sicurezza Firebase | Usa gli emulatori Realtime Database e Cloud Firestore per testare il comportamento della tua app e convalidare le tue regole prima di distribuirle alla produzione. | |
Distribuisci le tue regole di sicurezza Firebase | Utilizza la console Firebase o l'interfaccia a riga di comando di Firebase per distribuire le regole alla produzione. |
Prossimi passi
- Comprendere il linguaggio delle regole di sicurezza di Firebase .
- Scopri di più su come funzionano le regole di sicurezza di Firebase .
- Esplora gli errori comuni che dovresti evitare .