Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Comprendi le regole di sicurezza di Firebase per il 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 fondamentali per il successo del tuo prodotto.

Analogamente a come Firebase Authentication semplifica l'autenticazione degli utenti, Firebase Security Rules for Cloud Storage semplifica l'autorizzazione degli utenti e la convalida delle richieste. Le regole di sicurezza di Cloud Storage gestiscono la complessità per te consentendoti di specificare le autorizzazioni basate sul percorso. In poche righe di codice, puoi scrivere regole di autorizzazione che limitano le richieste di Cloud Storage a un determinato utente o limitano le dimensioni di un caricamento.

Database Firebase in tempo reale ha una funzione simile, chiamato Regole database Firebase in tempo reale

Autenticazione

Sapere chi sono i tuoi utenti è una parte importante della creazione di un'applicazione e Firebase Authentication fornisce una soluzione di autenticazione 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 sull'utente. Quando un utente è autenticato con Firebase autenticazione, il request.auth variabile nel cloud storage Regole sicurezza diventa un oggetto che contiene l'ID utente unico ( request.auth.uid ) e tutte le altre informazioni 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 in base all'utente. Potete saperne di più nella Authentication sezione.

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 Cloud Storage.

Cloud Storage ti consente di specificare regole di autorizzazione per file e per percorso che risiedono sui nostri server e determinano l'accesso ai file nella tua app. Ad esempio, i cloud storage Sicurezza Regole predefinite richiedono l'autenticazione Firebase al fine di eseguire qualsiasi read o write operazioni su tutti i file:

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

È possibile modificare queste regole selezionando un'applicazione Firebase nella console Firebase e visualizzando l' Rules scheda della sezione di stoccaggio.

Convalida dei dati

Firebase Regole di sicurezza per Cloud Storage può essere utilizzato anche per la convalida dei dati, tra cui la convalida il nome del file e il percorso così come le proprietà dei metadati di 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 pianificazione dello sviluppo regole per le benne Cloud Storage.

  • Scopri di più su sicuri i propri dati utilizzando le regole di sicurezza.