| ZXCVFIXVIBESEG3 |
ପ୍ରଭାବ
| ZXCVFIXVIBESEG4 | ଧାଡି ସ୍ତରର ସୁରକ୍ଷା (RLS) କାର୍ଯ୍ୟକାରୀ କରିବାରେ ବିଫଳତା, ଅଣ-ପ୍ରାମାଣିକ ଆକ୍ରମଣକାରୀଙ୍କୁ Supabase ଡାଟାବେସ୍ ରୁ ତଥ୍ୟ ପଚାରିବାକୁ ଅନୁମତି ଦେଇଥାଏ ଯେତେବେଳେ ସର୍ବସାଧାରଣ ଟେବୁଲଗୁଡିକ [S1] ମାଧ୍ୟମରେ ପ୍ରକାଶ ପାଇଥାଏ | କାରଣ Next.js ପ୍ରୟୋଗଗୁଡ଼ିକ ସାଧାରଣତ Z Supabase anon ଚାବିକୁ କ୍ଲାଏଣ୍ଟ ସାଇଡ୍ କୋଡରେ ପ୍ରକାଶ କରିଥାଏ, ଜଣେ ଆକ୍ରମଣକାରୀ ଏହି ଚାବିକୁ ବ୍ୟବହାର କରି ସିଧାସଳଖ REST API କଲ୍ ବ୍ୟବହାର କରି ଡାଟାବେସରେ ପ୍ରବେଶ କରିଥାଏ | [S2] |
| ZXCVFIXVIBESEG5 |
ମୂଳ କାରଣ |
| ZXCVFIXVIBESEG6 | ଡିଫଲ୍ଟ ଭାବରେ, Supabase ରେ ପୋଷ୍ଟଗ୍ରେସ୍ ଟେବୁଲଗୁଡିକ [S1] କୁ ସର୍ବସାଧାରଣ ପ୍ରବେଶକୁ ରୋକିବା ପାଇଁ ଧାଡି ସ୍ତରର ସୁରକ୍ଷାକୁ ସ୍ପଷ୍ଟ ସକ୍ରିୟ କରିବା ଆବଶ୍ୟକ କରେ | ଯେତେବେଳେ ଜଣେ ଡେଭଲପର୍ ଏକ ଟେବୁଲ୍ ସୃଷ୍ଟି କରେ କିନ୍ତୁ RLS ସକ୍ଷମ କରିବାକୁ ଭୁଲିଯାଏ କିମ୍ବା ପ୍ରତିବନ୍ଧକ ନୀତି ବ୍ୟାଖ୍ୟା କରିବାରେ ବିଫଳ ହୁଏ, ଡାଟାବେସ୍ ପ୍ରକଳ୍ପର anon ଚାବି [S1] ଧାରଣ କରିଥିବା ବ୍ୟକ୍ତିଙ୍କୁ ତଥ୍ୟ ପ୍ରକାଶ କରିପାରେ | Next.js ପ୍ରୟୋଗଗୁଡ଼ିକରେ, ସର୍ଭର-ସାଇଡ୍ ରେଣ୍ଡରିଂ ଏବଂ କ୍ଲାଏଣ୍ଟ-ସାଇଡ୍ ଫେଚିଂ ମଧ୍ୟ ଯତ୍ନଶୀଳ Supabase କ୍ଲାଏଣ୍ଟ ସେଟଅପ୍ ଆବଶ୍ୟକ କରେ ତେଣୁ ପ୍ରାମାଣିକୃତ ଉପଭୋକ୍ତା ପ୍ରସଙ୍ଗ ଡାଟାବେସ୍ ସ୍ତରରେ [S2] ରେ ପହଞ୍ଚେ |
| ZXCVFIXVIBESEG7 |
କଂକ୍ରିଟ୍ ଫିକ୍ସସ୍ |
| ZXCVFIXVIBESEG8 | ।। | ZXCVFIXVIBESEG9 | 2। ନୀତିଗୁଡିକ ବ୍ୟାଖ୍ୟା କରନ୍ତୁ: ନିର୍ଦ୍ଦିଷ୍ଟ ନୀତିଗୁଡିକ ସୃଷ୍ଟି କରନ୍ତୁ ଯାହା ଉପଭୋକ୍ତାଙ୍କର ପ୍ରାମାଣିକିକରଣ ସ୍ଥିତି ଉପରେ ଆଧାର କରି ପ୍ରବେଶକୁ ପ୍ରତିବନ୍ଧିତ କରିଥାଏ, ଯେପରିକି CREATE POLICY "Users can see their own data" ON your_table_name FOR SELECT USING (auth.uid() = user_id); [S1] | | ZXCVFIXVIBESEG10 3। ସୁରକ୍ଷିତ ସର୍ଭର-ସାଇଡ୍ କ୍ଲାଏଣ୍ଟ: Next.js ବ୍ୟବହାର କରିବାବେଳେ, ସେବା-ଭୂମିକା କ୍ଲାଏଣ୍ଟ ସର୍ଭରକୁ କେବଳ ରଖନ୍ତୁ ଏବଂ [S2] ବ୍ୟବହାରକାରୀଙ୍କୁ ତଥ୍ୟ ଫେରାଇବା ପୂର୍ବରୁ ମାଲିକାନା ଫିଲ୍ଟର ପ୍ରୟୋଗ କରନ୍ତୁ |
| ZXCVFIXVIBESEG11
ଏହା ପାଇଁ FixVibe କିପରି ପରୀକ୍ଷା କରେ |
| ZXCVFIXVIBESEG12 FixVibe ପୂର୍ବରୁ baas.supabase-rls ମାଧ୍ୟମରେ କେବଳ ପଠନୀୟ Supabase RLS ଯାଞ୍ଚ କରିଥାଏ | ସମାନ ମୂଳ ଜାଭାସ୍କ୍ରିପ୍ଟ ବଣ୍ଡଲରୁ Supabase ପ୍ରୋଜେକ୍ଟ URL ଏବଂ ସାର୍ବଜନୀନ ଆନ୍ କୀ ଆବିଷ୍କାର କରେ, ସର୍ବସାଧାରଣ ଟେବୁଲ୍ ମେଟାଡାଟା ପାଇଁ PostgREST କୁ ପଚାରିଥାଏ, ଏବଂ ବ୍ୟବହାରକାରୀ ଅଧିବେଶନ ବିନା ତଥ୍ୟ ଉନ୍ମୋଚିତ ହୋଇଛି କି ନାହିଁ ତାହା ନିଶ୍ଚିତ କରିବାକୁ ସୀମିତ ପଠନ-ଚୟନ କରିଥାଏ | ଏହା ସେବା-ଭୂମିକା ପରିଚୟପତ୍ର ସନ୍ନିବେଶ, ଅଦ୍ୟତନ, ବିଲୋପ କିମ୍ବା ବ୍ୟବହାର କରେ ନାହିଁ | ରେପୋ ସ୍କାନ୍ ମଧ୍ୟ ଏହା ପୂର୍ବରୁ repo.supabase.missing-rls ମାଧ୍ୟମରେ ଧରିପାରେ, ଯାହାକି SQL ସ୍ଥାନାନ୍ତରଣକୁ ଫ୍ଲାଗ୍ କରିଥାଏ ଯାହାକି ENABLE ROW LEVEL SECURITY ବିନା ସର୍ବସାଧାରଣ ଟେବୁଲ୍ ସୃଷ୍ଟି କରେ |
