Traditionell war Sicherheit einer der komplexesten Teile der App-Entwicklung. In den meisten Anwendungen müssen Entwickler einen Server erstellen und ausführen, der die Authentifizierung (wer ein Benutzer ist) und die Autorisierung (was ein Benutzer tun kann) verwaltet. Authentifizierung und Autorisierung sind schwer einzurichten, schwerer zu finden und entscheidend für den Erfolg Ihres Produkts.
Ähnlich wie die Firebase-Authentifizierung die Authentifizierung Ihrer Benutzer erleichtert, können Sie mit den Firebase-Sicherheitsregeln für Cloud-Speicher Benutzer einfach autorisieren und Anforderungen validieren. Cloud Storage-Sicherheitsregeln verwalten die Komplexität für Sie, indem Sie pfadbasierte Berechtigungen angeben können. In nur wenigen Codezeilen können Sie Autorisierungsregeln schreiben, die Cloud-Speicheranforderungen auf einen bestimmten Benutzer beschränken oder die Größe eines Uploads begrenzen.
Die Firebase-Echtzeitdatenbank verfügt über eine ähnliche Funktion, die als Firebase-Echtzeitdatenbankregeln bezeichnet wird
Authentifizierung
Zu wissen, wer Ihre Benutzer sind, ist ein wichtiger Bestandteil beim Erstellen einer Anwendung. Die Firebase-Authentifizierung bietet eine benutzerfreundliche, sichere, clientseitige Lösung für die Authentifizierung. Die Firebase-Sicherheitsregeln für Cloud-Speicher sind für die benutzerbasierte Sicherheit mit der Firebase-Authentifizierung verknüpft. Wenn ein Benutzer mit Firebase-Authentifizierung authentifiziert wird, wird die Variable request.auth
in den Cloud Storage Security Rules zu einem Objekt, das die eindeutige ID des Benutzers ( request.auth.uid
) und alle anderen Benutzerinformationen im Token ( request.auth.token
) enthält. . Wenn der Benutzer nicht authentifiziert ist, ist request.auth
null
. Auf diese Weise können Sie den Datenzugriff auf Benutzerbasis sicher steuern. Weitere Informationen finden Sie im Abschnitt Authentifizierung .
Genehmigung
Die Identifizierung Ihres Benutzers ist nur ein Teil der Sicherheit. Sobald Sie wissen, wer sie sind, müssen Sie eine Möglichkeit haben, ihren Zugriff auf Dateien im Cloud-Speicher zu steuern.
Mit Cloud Storage können Sie Autorisierungsregeln pro Datei und Pfad angeben, die auf unseren Servern gespeichert sind, und den Zugriff auf die Dateien in Ihrer App bestimmen. Beispielsweise erfordern die Standard-Cloud-Speichersicherheitsregeln eine Firebase-Authentifizierung, um read
oder write
für alle Dateien ausführen zu können:
service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth != null; } } }
Sie können diese Regeln bearbeiten, indem Sie eine Firebase-App in der Firebase-Konsole auswählen und die Registerkarte Rules
im Abschnitt Speicher anzeigen.
Datenvalidierung
Firebase-Sicherheitsregeln für Cloud-Speicher können auch zur Datenüberprüfung verwendet werden, einschließlich der Überprüfung des Dateinamens und -pfads sowie der Eigenschaften von contentType
wie contentType
und 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/.*'); } } }
Nächste Schritte
Beginnen Sie mit der Planung der Regelentwicklung für Ihre Cloud Storage-Buckets.
Weitere Informationen zum Sichern Ihrer Daten mithilfe von Sicherheitsregeln.