Firebase Security Rules

Usa le nostre regole di sicurezza Firebase estendibili e flessibili per proteggi i tuoi dati su Cloud Firestore, Firebase Realtime Database e Cloud Storage.

Firebase Security Rules si interpone tra i tuoi dati e gli utenti malintenzionati. Puoi scrivere in modo semplice regole complesse che proteggono i dati dell'app al livello di granularità richieste dalla tua app specifica.

Leva di Firebase Security Rules linguaggi di configurazione flessibili ed estensibili per definire quali dati può accedere per Realtime Database, Cloud Firestore e Cloud Storage. Firebase Realtime Database Security Rules utilizza JSON nelle definizioni delle regole, mentre Cloud Firestore Security Rules e Firebase Security Rules per Cloud Storage sfruttano un valore un linguaggio adatto a contenere strutture specifiche di regole più complesse.

Scopri di più su come configurare Rules per i prodotti Firebase specifici che utilizzi nella tua app e le differenze di comportamento di Rules in Firebase prodotti di big data e machine learning.

Inizia

Funzionalità chiave

Flessibilità Scrivi regole personalizzate utili per la struttura e il comportamento della tua app. Rules utilizza lingue che ti consentono di sfruttare i tuoi dati per autorizzare l'accesso.
Granularità Puoi applicare regole generiche o limitate a seconda delle tue esigenze.
Sicurezza indipendente Poiché i Rules sono definiti all'esterno dell'app (nella console Firebase oppure interfaccia a riga di comando Firebase), client non sono responsabili dell'applicazione delle misure di sicurezza, i bug non compromettono i dati i tuoi dati sono sempre protetti.

Come funzionano?

Firebase Security Rules funziona abbinando un pattern ai percorsi del database e poi applicando condizioni personalizzate per consentire l'accesso ai dati in quei percorsi. Tutti i Rules nei prodotti Firebase hanno un componente di corrispondenza del percorso e un che consente l'accesso in lettura o scrittura. Devi definire Rules per ogni prodotto Firebase che usi nella tua app.

Per Cloud Firestore e Cloud Storage, Rules utilizza 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 Realtime Database, Rules basato su JSON utilizza la seguente sintassi:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Rules vengono applicati come istruzioni OR, non AND. Di conseguenza, se più regole corrispondono a un percorso e qualsiasi condizioni consentono l'accesso, Rules concedono l'accesso ai dati in quel momento del tuo percorso di apprendimento. Pertanto, se una regola generica consente l'accesso ai dati, non puoi limitare con una regola più specifica. Puoi, però, evitare questo problema assicurandoti I valori Rules non si sovrappongono troppo. Firebase Security Rules di sovrapposizioni di segnalazioni in: percorsi corrispondenti come avvisi del compilatore.

Firebase Security Rules può anche sfruttare Authentication per concedere autorizzazioni basate sugli utenti, mentre le condizioni che imposti possono essere molto basilari o estremamente complesse. Scopri di più sul linguaggio e sul comportamento di Rules prima di iniziare a scrivere Rules.

Percorso di implementazione

Integra gli SDK del prodotto Configura Cloud Firestore, Cloud Storage o Realtime Database per la tua app.
Scrivi il tuo Firebase Security Rules Scopri di più su come funziona Rules e configurare alcune Rules
Testa Firebase Security Rules Usa gli emulatori Realtime Database e Cloud Firestore per testare l'app comportamento e convalidare le regole prima di eseguirne il deployment in produzione.
Esegui il deployment di Firebase Security Rules Utilizza la console Firebase o l'interfaccia a riga di comando Firebase per eseguire il deployment delle regole alla produzione.

Passaggi successivi