FixVibe
Covered by FixVibehigh

Cothrom air dàta gun chead tro thèarainteachd ìre sreath Supabase a tha a dhìth (RLS)

Ann an tagraidhean le taic Supabase, tha tèarainteachd dàta an urra ri Tèarainteachd Ìre Row (RLS). Mura h-eil RLS air a chomasachadh gu soilleir agus air a rèiteachadh le poileasaidhean, faodaidh neach-cleachdaidh sam bith leis an iuchair phoblach gun urra dàta a leughadh, ùrachadh no a dhubhadh às thairis air an stòr-dàta gu lèir. Tha seo gu sònraichte deatamach ann an àrainneachdan Next.js far a bheil an neach-dèiligidh Supabase gu tric air a thòiseachadh le iuchair poblach API.

CWE-284

Buaidh

Mura cuirear an gnìomh Tèarainteachd Ìre Row (RLS) leigidh luchd-ionnsaigh gun dearbhadh dàta a cheasnachadh bho stòr-dàta Supabase nuair a tha bùird poblach fosgailte tron ​​chrìoch anon [S1]. Leis gu bheil tagraidhean Next.js mar as trice a’ nochdadh an iuchair Supabase anon ann an còd taobh teachdaiche, faodaidh neach-ionnsaigh an iuchair seo a chleachdadh gus REST API dìreach a dhèanamh fiosan chun stòr-dàta a tha san amharc, faighinn seachad air fiosan neach-cleachdaidh mothachail agus faighinn chun stòr-dàta. [S2].

Bun-adhbhar

Gu gnàthach, feumaidh clàran Postgres ann an Supabase Tèarainteachd Ìre Row a chuir an gnìomh gu soilleir gus casg a chuir air ruigsinneachd poblach [S1]. Nuair a chruthaicheas leasaiche clàr ach a dhìochuimhnicheas e RLS a chomasachadh no mura dèan e mìneachadh air poileasaidhean cuibhrichte, faodaidh an stòr-dàta dàta a nochdadh do dhuine sam bith aig a bheil iuchair anon a’ phròiseict [S1]. Ann an tagraidhean Next.js, feumaidh tairgse taobh frithealaiche agus faighinn taobh teachdaiche cuideachd suidheachadh teachdaiche faiceallach Supabase gus am bi co-theacs cleachdaiche dearbhte a’ ruighinn ìre an stòr-dàta [S2].

Ceartachaidhean concrait

  • Cuir an comas RLS: Cuir an gnìomh ALTER TABLE "your_table_name" ENABLE ROW LEVEL SECURITY; airson gach clàr poblach a bhios a’ stòradh dàta app [S1].
  • Mìnich Poileasaidhean: Cruthaich poileasaidhean sònraichte a chuireas casg air ruigsinneachd stèidhichte air inbhe dearbhaidh an neach-cleachdaidh, leithid CREATE POLICY "Users can see their own data" ON your_table_name FOR SELECT USING (auth.uid() = user_id); [S1].
  • Luchd-dèiligidh Tèarainte Taobh an Fhrithealaiche: Nuair a bhios tu a’ cleachdadh Next.js, cùm seirbheis teachdaiche frithealaiche a-mhàin agus cuir sìoltachain seilbh an sàs mus till thu dàta gu luchd-cleachdaidh [S2].

Mar a nì FixVibe deuchainn air a shon

Tha FixVibe mu thràth a’ ruith seic Supabase RLS le leughadh a-mhàin tro baas.supabase-rls. Bidh an sganair a’ faighinn a-mach URL pròiseact Supabase agus iuchair phoblach anon bho phasganan JavaScript den aon thùs, ag iarraidh air PostgREST meata-dàta bùird poblach, agus a’ feuchainn ri taghaidhean cuibhrichte ri leughadh a-mhàin gus dearbhadh a bheil dàta air fhoillseachadh às aonais seisean cleachdaiche. Cha bhith e a’ cuir a-steach, ag ùrachadh, a’ cuir às, no a’ cleachdadh teisteanasan dreuchd seirbheis. Faodaidh sganaidhean Repo seo a ghlacadh nas tràithe cuideachd tro repo.supabase.missing-rls, a tha a’ comharrachadh imrich SQL a chruthaicheas bùird poblach às aonais ENABLE ROW LEVEL SECURITY.