Hopp til innhold

Sjekk Firebase-reglene dine mot 26 vanlige feil

Lim inn sikkerhetsreglene for Firestore, Firebase Storage eller Realtime Database. Sjekken leser teksten og viser hvilke stier som lar hvem som helst lese eller skrive.

Lim inn reglene dine

Du kan lime inn opptil 48 000 tegn til sammen i de tre feltene.

Bekreft at du er et menneske

Dette holder automatiske forespørsler unna tjenesten.

Reglene dine behandles i minnet i Cloudflares nettverk og forkastes etter svaret. Ingenting lagres.

Resultat

Dette er statisk analyse av innlimt tekst. Den ser ikke custom claims, App Check, datastruktur eller regler som aldri ble publisert; karakteren dekker bare det de 26 sjekkene kan lese.

Hva denne sjekken ikke kan se

Sjekken leser bare teksten du limte inn. Den ser ikke custom claims, App Check, hvordan dataene dine er bygd opp eller regler som aldri ble publisert, så et rent resultat betyr ikke at prosjektet er trygt.

Alle 26 sjekker

SjekkIDTjenesteAlvorlighetsgrad
Hvem som helst kan skrive til Firestorefs-open-writeFirestoreKritisk
Hvem som helst kan lese fra Firestorefs-open-readFirestoreMiddels
En rekursiv wildcard-match er åpenfs-recursive-wildcard-openFirestoreKritisk
Testmodus-regler med utløpsdatofs-test-mode-expiryFirestoreKritisk
Enhver innlogget bruker kan skrivefs-auth-only-writeFirestoreHøy
Enhver innlogget bruker kan lesefs-auth-only-readFirestoreMiddels
E-post stoles på uten email_verifiedfs-email-unverifiedFirestoreMiddels
Rolle leses fra forespørselens datafs-role-from-requestFirestoreHøy
En bred wildcard skjuler strengere reglerfs-wildcard-shadowFirestoreHøy
Brukere kan skrive sin egen rolle (heuristikk)fs-self-role-writeFirestoreHøy
Skrivinger godtar hvilke felt som helst (heuristikk)fs-write-no-field-guardFirestoreMiddels
read er ikke delt i get og listfs-read-not-splitFirestoreInfo
Ingen eksplisitt standard nektfs-no-default-denyFirestoreInfo
Firestore-reglene kunne ikke tolkesfs-parse-errorFirestoreInfo
Hvem som helst kan lese Storage-filerst-open-readStorageMiddels
Hvem som helst kan skrive til Storagest-open-writeStorageKritisk
Matchen {allPaths=**} er åpenst-recursive-wildcard-openStorageKritisk
Enhver innlogget bruker kan skrive til Storagest-auth-only-writeStorageHøy
Storage-reglene kunne ikke tolkesst-parse-errorStorageInfo
Hele databasen kan leses av hvem som helstdb-root-read-openRealtime DatabaseKritisk
Hele databasen kan skrives av hvem som helstdb-root-write-openRealtime DatabaseKritisk
En node kan leses av hvem som helstdb-open-readRealtime DatabaseMiddels
En node kan skrives av hvem som helstdb-open-writeRealtime DatabaseHøy
En barneregel overstyres av forelderendb-cascade-overrideRealtime DatabaseHøy
Alle innloggede brukere kan lese eller skrive hele databasendb-auth-only-rootRealtime DatabaseHøy
Realtime Database-reglene kunne ikke tolkesdb-parse-errorRealtime DatabaseInfo

Spørsmål

Hva ser Firebase-regelsjekken på?

Den leser Firebase-sikkerhetsreglene du limer inn for Firestore, Cloud Storage og Realtime Database, og leter etter regler som lar hvem som helst lese eller skrive, regler som bare krever en innlogget bruker, tillit til data fra klienten og lignende mønstre.

Lagres regelteksten min?

Nei. Reglene behandles i minnet i Cloudflares nettverk og forkastes når svaret er sendt. Ingenting lagres eller logges sammen med teksten.

Hvor mye kan jeg lime inn?

Opptil 48,000 tegn til sammen i de tre feltene. Hvis reglene dine er lengre, limer du inn den delen du vil ha sjekket.

Hvorfor kan en åpen leseregel være greit?

Noen data skal være offentlige, for eksempel en produktkatalog eller blogginnlegg. For Firestore og Storage teller sjekken en ubetinget lesing som et middels problem og trekker 10 poeng, fordi den ikke kan vite om dataene er private. Hvis dataene er offentlige med vilje, kan du godta den kostnaden. Bare i roten av Realtime Database vurderer den en åpen lesing som mer alvorlig.

Hva er testmodus-regler?

Når du oppretter en Firestore-database i testmodus, skriver konsollen en regel som tillater alt frem til en dato, med request.time. Frem til da kan hvem som helst lese og skrive; etterpå nektes alt og appen slutter å virke. Bytt den ut med ekte vilkår før lansering.

Hvordan kaskaderer reglene i Realtime Database?

I Realtime Database gjelder en regel som gir tilgang for alt under den, og et barn kan ikke ta den tilbake. En strengere regel på et barn under en tillatende forelder gjelder aldri, og derfor rapporterer sjekken den.

Hva betyr karakteren?

Den oppsummerer bare det sjekkene kan lese i den innlimte teksten: en poengsum fra 100 minus et fradrag for hver mislykkede sjekk, satt av det alvorligste problemet sjekken fant, og ethvert kritisk problem gir F. Et middels punkt kan også være en heuristikk som ber deg sjekke for hånd, fordi teksten alene ikke viser om det er et reelt problem. En A beviser ikke at prosjektet er sikkert, for custom claims, App Check og selve dataene er utenfor rekkevidde.