Pereiti prie turinio

Patikrinkite Firebase saugumo taisykles pagal 26 dažnų klaidų

Įklijuokite Firestore saugumo taisykles, Firebase Storage taisykles arba Realtime Database taisykles. Patikra perskaito tekstą ir parodo, kurie keliai leidžia visiems skaityti ar rašyti.

Įklijuokite savo taisykles

Trijuose laukuose iš viso galite įklijuoti ne daugiau kaip 48 000 simbolių.

Patvirtinkite, kad esate žmogus

Tai neleidžia automatinėms užklausoms apkrauti paslaugos.

Jūsų taisyklės apdorojamos atmintyje Cloudflare tinkle ir po atsakymo išmetamos. Niekas nesaugoma.

Rezultatas

Tai statinė įklijuoto teksto analizė. Ji nemato pasirinktinių claims, App Check, duomenų formos ir taisyklių, kurios niekada nebuvo įdiegtos; įvertinimas apima tik tai, ką gali perskaityti 26 patikros.

Ko ši patikra nemato

Patikra skaito tik įklijuotą tekstą. Ji nemato pasirinktinių claims, App Check, jūsų duomenų formos ir taisyklių, kurios niekada nebuvo įdiegtos, todėl švarus rezultatas nereiškia, kad projektas saugus.

Visos 26 patikros

PatikraIDPaslaugaSvarba
Bet kas gali rašyti į Firestorefs-open-writeFirestoreKritinė
Bet kas gali skaityti iš Firestorefs-open-readFirestoreVidutinė
Rekursyvus pakaitos simbolio match atvirasfs-recursive-wildcard-openFirestoreKritinė
Bandomojo režimo taisyklės su galiojimo pabaigos datafs-test-mode-expiryFirestoreKritinė
Rašyti gali bet kuris prisijungęs naudotojasfs-auth-only-writeFirestoreAukšta
Skaityti gali bet kuris prisijungęs naudotojasfs-auth-only-readFirestoreVidutinė
El. paštu pasitikima be email_verifiedfs-email-unverifiedFirestoreVidutinė
Rolė skaitoma iš užklausos duomenųfs-role-from-requestFirestoreAukšta
Platus pakaitos simbolio match slepia griežtesnes taisyklesfs-wildcard-shadowFirestoreAukšta
Naudotojai gali įrašyti savo rolę (euristika)fs-self-role-writeFirestoreAukšta
Rašymas priima bet kokius laukus (euristika)fs-write-no-field-guardFirestoreVidutinė
read nesuskaidytas į get ir listfs-read-not-splitFirestoreInfo
Nėra aiškaus numatytojo draudimofs-no-default-denyFirestoreInfo
Firestore taisyklių nepavyko perskaitytifs-parse-errorFirestoreInfo
Bet kas gali skaityti Storage failusst-open-readStorageVidutinė
Bet kas gali rašyti į Storagest-open-writeStorageKritinė
Match {allPaths=**} atvirasst-recursive-wildcard-openStorageKritinė
Į Storage rašyti gali bet kuris prisijungęs naudotojasst-auth-only-writeStorageAukšta
Storage taisyklių nepavyko perskaitytist-parse-errorStorageInfo
Visą duomenų bazę gali skaityti bet kasdb-root-read-openRealtime DatabaseKritinė
Į visą duomenų bazę gali rašyti bet kasdb-root-write-openRealtime DatabaseKritinė
Mazgą gali skaityti bet kasdb-open-readRealtime DatabaseVidutinė
Į mazgą gali rašyti bet kasdb-open-writeRealtime DatabaseAukšta
Vaikinio mazgo taisyklę nustelbia tėvinisdb-cascade-overrideRealtime DatabaseAukšta
Bet kuris prisijungęs naudotojas gali skaityti ar rašyti visą duomenų bazędb-auth-only-rootRealtime DatabaseAukšta
Realtime Database taisyklių nepavyko perskaitytidb-parse-errorRealtime DatabaseInfo

Klausimai

Ką tikrina Firebase taisyklių patikra?

Ji skaito Firebase saugumo taisykles, kurias įklijuojate Firestore, Cloud Storage ir Realtime Database, ir ieško taisyklių, kurios leidžia visiems skaityti ar rašyti, taisyklių, reikalaujančių tik prisijungusio naudotojo, pasitikėjimo kliento įvestimi ir panašių šablonų.

Ar mano taisyklių tekstas saugomas?

Ne. Taisyklės apdorojamos atmintyje Cloudflare tinkle ir išsiuntus atsakymą išmetamos. Kartu su tekstu niekas neišsaugoma ir nežurnalinama.

Kiek galima įklijuoti?

Iš viso iki 48,000 simbolių trijuose laukuose. Jei jūsų taisyklės ilgesnės, įklijuokite dalį, kurią norite patikrinti.

Kodėl vieša skaitymo taisyklė gali būti tinkama?

Kai kurie duomenys skirti būti vieši, pavyzdžiui, produktų katalogas ar tinklaraščio įrašai. Firestore ir Storage atveju patikra besąlyginį skaitymą laiko vidutine problema ir atima 10 taškų, nes ji negali žinoti, ar duomenys privatūs. Jei duomenys sąmoningai vieši, šią kainą galite priimti. Tik Realtime Database šaknyje ji atvirą skaitymą vertina kaip rimtesnį.

Kas yra bandomojo režimo taisyklės?

Kai Firestore duomenų bazę sukuriate bandomuoju režimu, konsolė įrašo taisyklę, kuri iki datos leidžia viską, naudodama request.time. Iki tos datos bet kas gali skaityti ir rašyti; vėliau viskas draudžiama ir programa nustoja veikti. Prieš paleidimą pakeiskite ją tikromis sąlygomis.

Kaip Realtime Database taisyklės paveldimos?

Realtime Database taisyklė, suteikianti prieigą, galioja viskam žemiau, o vaikinis mazgas jos atšaukti negali. Griežtesnė vaikinio mazgo taisyklė po atlaidžiu tėviniu mazgu niekada netaikoma, todėl patikra apie tai praneša.

Ką reiškia įvertinimas?

Jis apibendrina tik tai, ką patikros gali perskaityti įklijuotame tekste: rezultatas iš 100 minus bauda už kiekvieną nepavykusią patikrą, nustatoma pagal sunkiausią joje rastą problemą, o bet kuri kritinė problema yra F. Vidutinė pozicija taip pat gali būti euristika, prašanti patikrinti rankiniu būdu, nes vien iš teksto nematyti, ar tai tikra problema. Įvertinimas A neįrodo, kad projektas saugus, nes pasirinktiniai claims, App Check ir patys duomenys yra nepasiekiami.