Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Comprendere le regole di sicurezza Firebase per Cloud Storage

Tradizionalmente, la sicurezza è stata una delle parti più complesse dello sviluppo di app. Nella maggior parte delle applicazioni, gli sviluppatori devono creare ed eseguire un server che gestisca l'autenticazione (chi è un utente) e l'autorizzazione (cosa può fare un utente). L'autenticazione e l'autorizzazione sono difficili da configurare, più difficili da ottenere correttamente e sono fondamentali per il successo del tuo prodotto.

Analogamente a come Firebase Authentication semplifica l'autenticazione degli utenti, Firebase Security Rules for Cloud Storage ti consente di autorizzare facilmente gli utenti e convalidare le richieste. Le regole di sicurezza dello storage gestiscono la complessità consentendo all'utente di specificare autorizzazioni basate sul percorso. In poche righe di codice, puoi scrivere regole di autorizzazione che limitano le richieste di Google Cloud Storage a un determinato utente o limitano le dimensioni di un caricamento.

Firebase Realtime Database ha una funzionalità simile, chiamata Firebase Realtime Database Rules

Autenticazione

Sapere chi sono i tuoi utenti è una parte importante della creazione di un'applicazione e Firebase Authentication offre una soluzione di autenticazione lato client facile da usare, sicura e solo lato client. Le regole di sicurezza Firebase per Cloud Storage si collegano all'autenticazione Firebase per la sicurezza basata sugli utenti. Quando un utente viene autenticato con Firebase Authentication, la variabile request.auth in Storage Security Rules diventa un oggetto che contiene l'ID univoco dell'utente ( request.auth.uid ) e tutte le altre informazioni sull'utente nel token ( request.auth.token ). Quando l'utente non è autenticato, request.auth è null . Ciò consente di controllare in modo sicuro l'accesso ai dati per utente. Puoi saperne di più nella sezione Autenticazione .

Autorizzazione

Identificare il tuo utente è solo una parte della sicurezza. Una volta che sai chi sono, hai bisogno di un modo per controllare il loro accesso ai file in Google Cloud Storage.

Google Cloud Storage ti consente di specificare le regole di autorizzazione per file e per percorso che risiedono sui nostri server e determinare l'accesso ai file nella tua app. Ad esempio, le regole di sicurezza dello storage predefinite richiedono l'autenticazione Firebase per eseguire qualsiasi operazione di read o write su tutti i file:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;
    }
  }
}

Puoi modificare queste regole selezionando un'app Firebase nella console Firebase e visualizzando la scheda Rules della sezione Archiviazione.

Convalida dei dati

Le regole di sicurezza Firebase per Cloud Storage possono essere utilizzate anche per la convalida dei dati, inclusa la convalida del nome e del percorso del file, nonché delle proprietà dei metadati del file come contentType e size .

service firebase.storage {
  match /b/{bucket}/o {
    match /images/{imageId} {
      // Only allow uploads of any image file that's less than 5MB
      allow write: if request.resource.size < 5 * 1024 * 1024
                   && request.resource.contentType.matches('image/.*');
    }
  }
}

Prossimi passi

  • Inizia a pianificare lo sviluppo delle regole per i tuoi bucket di archiviazione.

  • Ulteriori informazioni sulla protezione dei dati utilizzando le regole di sicurezza.