FixVibe
Covered by FixVibehigh

Fidirana angona tsy nahazoana alalana amin'ny alàlan'ny Supabase Tsy misy Fiarovana ambaratonga (RLS)

Amin'ny fampiharana tohanan'ny Supabase, ny fiarovana angon-drakitra dia miankina amin'ny Row Level Security (RLS). Raha RLS dia tsy alefa mazava sy voarindra miaraka amin'ny politika, afaka mamaky, manavao, na mamafa angon-drakitra manerana ny angona manontolo ny mpampiasa rehetra manana ny fanalahidin'ny tsy mitonona anarana. Izany dia manakiana indrindra amin'ny tontolo Next.js izay matetika atomboka amin'ny famaha API ny mpanjifa Supabase.

CWE-284

Fiantraikany

Ny tsy fampiharana ny Row Level Security (RLS) dia ahafahan'ny mpanafika tsy voamarina manontany angona avy amin'ny angona Supabase rehefa miseho amin'ny alàlan'ny sisintany anon [S1] ny latabatra ho an'ny daholobe. Satria ny fampiharana Next.js mazàna dia mampiseho ny Supabase anon famaha ao amin'ny kaody eo amin'ny lafiny mpanjifa, ny mpanafika dia afaka mampiasa io fanalahidy io mba hanao REST mivantana API amin'ny alàlan'ny fidirana amin'ny fampahalalam-baovao sy logiciel amin'ny fidirana amin'ny angon-drakitra. [S2].

Antony fototra

Amin'ny alàlan'ny default, ny tabilao Postgres ao amin'ny Supabase dia mitaky fampahavitrihana mazava ny Row Level Security mba hisorohana ny fidiran'ny besinimaro [S1]. Rehefa mamorona latabatra ny mpandrindra iray nefa hadinony ny mamela ny RLS na tsy mamaritra ny politika famerana, dia mety hamoaka angon-drakitra amin'izay manana ny lakilen'ny anon [S1] ny angona. Ao amin'ny fampiharana Next.js, ny famandrihana amin'ny lafiny mpizara sy ny fakana amin'ny lafiny mpanjifa dia mitaky fitandremana ihany koa ny fametrahana mpanjifa Supabase mba hahatongavana amin'ny sarin'ny angon-drakitra [S2] ny tontolon'ny mpampiasa voamarina.

Fanamboarana simenitra

  • Alefaso ny RLS: Fenoy ny ALTER TABLE "your_table_name" ENABLE ROW LEVEL SECURITY; ho an'ny latabatra ho an'ny daholobe rehetra mitahiry angona fampiharana [S1].
  • Farito ny politika: Mamorona politika manokana mametra ny fidirana mifototra amin'ny satan'ny fanamarinana ny mpampiasa, toy ny CREATE POLICY "Users can see their own data" ON your_table_name FOR SELECT USING (auth.uid() = user_id); [S1].
  • Sarobidy ny mpanjifa amin'ny lafiny server: Rehefa mampiasa Next.js dia tehirizo ny mpizara mpanjifa andraikitry ny serivisy ihany ary mbola ampiharo ny sivana fananana alohan'ny hamerenana ny angona amin'ny mpampiasa [S2].

Ahoana no andrana FixVibe momba izany

FixVibe dia efa mampiasa Supabase RLS vakiana fotsiny amin'ny alàlan'ny baas.supabase-rls. Hitan'ilay scanner ny URL tetikasa Supabase sy ny lakilen'ny public anon avy amin'ny fehezam-boninkazo JavaScript niandohany, manontany ny PostgREST momba ny metadata latabatra ho an'ny daholobe, ary manandrana misafidy vakiana voafetra ihany mba hanamafisana raha mibaribary ny angona raha tsy misy ny fotoam-piasan'ny mpampiasa. Tsy mampiditra, manavao, mamafa, na mampiasa fahazoan-dàlana ho an'ny serivisy. Ny scan Repo ihany koa dia afaka maka izany aloha amin'ny alàlan'ny repo.supabase.missing-rls, izay manefa ny fifindra-monina SQL izay mamorona latabatra ho an'ny daholobe tsy misy ENABLE ROW LEVEL SECURITY.