ထိခိုက်မှု
Row Level Security (RLS) ကို အကောင်အထည်ဖော်ရန် ပျက်ကွက်ခြင်းသည် အထောက်အထားမခိုင်လုံသော တိုက်ခိုက်သူများအား Supabase ဒေတာဘေ့စ်တစ်ခုမှ ဒေတာများကို anon နယ်နိမိတ်အတွင်း [S1] မှ စုံစမ်းမေးမြန်းနိုင်စေပါသည်။ Next.js အပလီကေးရှင်းများသည် ပုံမှန်အားဖြင့် Supabase anon သော့ကို client-side ကုဒ်တွင် ဖော်ထုတ်ထားသောကြောင့်၊ တိုက်ခိုက်သူသည် ဤကီးကို REST API ဒေတာဘေ့စ်သို့ တိုက်ရိုက်ခေါ်ဆိုမှုများပြုလုပ်ရန်၊ ရည်ရွယ်ထားသည့် အပလီကေးရှင်းမှတ်တမ်းကို ဝင်ရောက်ကြည့်ရှုနိုင်စေရန်နှင့် ထိလွယ်ရှလွယ်အသုံးပြုသူအချက်အလက်ကို ရှောင်လွှဲနိုင်သည် [S2]။
အကြောင်းအရင်း
ပုံမှန်အားဖြင့်၊ Supabase ရှိ Postgres ဇယားများသည် အများသူငှာဝင်ရောက်ခြင်းကို တားဆီးရန် [S1] တွင် အတန်းအဆင့်လုံခြုံရေးကို တိကျပြတ်သားစွာ အသက်သွင်းရန် လိုအပ်ပါသည်။ ဆော့ဖ်ဝဲအင်ဂျင်နီယာတစ်ဦးသည် ဇယားတစ်ခုဖန်တီးသော်လည်း RLS ကိုဖွင့်ရန်မေ့သွားသောအခါ သို့မဟုတ် တင်းကျပ်သောမူဝါဒများကို သတ်မှတ်ရန်ပျက်ကွက်သောအခါ၊ ဒေတာဘေ့စ်သည် ပရောဂျက်၏ anon သော့ [S1] ပိုင်ဆိုင်သူတိုင်းအား ဒေတာကို ဖော်ထုတ်နိုင်သည်။ Next.js အပလီကေးရှင်းများတွင်၊ server-side rendering နှင့် client-side fetching တို့သည် Supabase client setup ကို ဂရုတစိုက်လိုအပ်သောကြောင့် စစ်မှန်ကြောင်းအသုံးပြုသူ၏အကြောင်းအရာသည် ဒေတာဘေ့စ်အလွှာ [S2] သို့ရောက်ရှိသွားပါသည်။
ကွန်ကရစ်ပြင်ဆင်မှုများ
- RLS ကိုဖွင့်ပါ-
ALTER TABLE "your_table_name" ENABLE ROW LEVEL SECURITY;အက်ပ်ဒေတာ [S1] ကို သိမ်းဆည်းသည့် အများသူငှာ ဇယားတိုင်းအတွက်ALTER TABLE "your_table_name" ENABLE ROW LEVEL SECURITY;ကို လုပ်ဆောင်ပါ။ - မူဝါဒများကို သတ်မှတ်ခြင်း-
CREATE POLICY "Users can see their own data" ON your_table_name FOR SELECT USING (auth.uid() = user_id);[S1] ကဲ့သို့သော သုံးစွဲသူ၏ အထောက်အထားစိစစ်ခြင်း အခြေအနေကို အခြေခံ၍ ဝင်ရောက်ခွင့်ကို ကန့်သတ်သည့် သီးခြားမူဝါဒများကို ဖန်တီးပါ။
ZXCVFIXVIBESEG၁၀
- Secure Server-Side ဖောက်သည်များ- Next.js ကိုအသုံးပြုသောအခါ၊ ဝန်ဆောင်မှု-အခန်းကဏ္ဍ ဖောက်သည်များကို ဆာဗာသီးသန့်ထားရှိကာ [S2] သုံးစွဲသူများထံ ဒေတာမပြန်မီ ပိုင်ဆိုင်မှုစစ်ထုတ်မှုများကို ဆက်လက်ကျင့်သုံးဆဲဖြစ်သည်။
ZXCVFIXVIBESEG ၁၁
FixVibe စမ်းသပ်နည်း
FixVibe သည် ဖတ်ရန်သီးသန့် Supabase RLS ကို baas.supabase-rls မှတစ်ဆင့် စစ်ဆေးပြီးဖြစ်သည်။ စကင်နာသည် Supabase ပရောဂျက် URL နှင့် မူရင်း JavaScript အစုအဝေးများမှ အများသူငှာသော့ကို ရှာဖွေတွေ့ရှိပြီး အများသူငှာ ဇယားမက်တာဒေတာအတွက် PostgREST ကို တောင်းဆိုပြီး အသုံးပြုသူစက်ရှင်မပါဘဲ ဒေတာများကို ထုတ်ဖော်ခြင်းရှိမရှိ အတည်ပြုရန် အကန့်အသတ်ရှိသော ဖတ်ရှုခြင်းသာ ရွေးချယ်မှုများကို ကြိုးပမ်းသည်။ ၎င်းသည် ဝန်ဆောင်မှုဆိုင်ရာ အထောက်အထားများကို ထည့်သွင်းခြင်း၊ အပ်ဒိတ်လုပ်ခြင်း၊ ဖျက်ပစ်ခြင်း သို့မဟုတ် ဝန်ဆောင်မှုဆိုင်ရာ အထောက်အထားများကို အသုံးမပြုပါ။ Repo စကင်န်များသည် ENABLE ROW LEVEL SECURITY မပါဘဲ အများသူငှာ ဇယားများကို ဖန်တီးသည့် SQL ရွှေ့ပြောင်းမှုများကို အလံပြသည့် repo.supabase.missing-rls မှတဆင့်လည်း ၎င်းကို အစောပိုင်းတွင် သိရှိနိုင်သည်။
