RLS-ը թույլ է տալիս, իսկ Postgres-ը՝ ոչ. 403 սխալի պատմությունը

Ծրագրավորողը բախվել է PostgreSQL/Supabase միջավայրում 'permission denied' սխալի, չնայած RLS քաղաքականության ճիշտ կարգավորումներին: Խնդիրը կայանում էր նրանում, որ RLS-ը վերահսկում է տողերի հասանելիությունը, իսկ սյունակների մակարդակի GRANT-ները՝ թե արդյոք դերը կարող է փոխազդել կոնկրետ դաշտերի հետ: Պարզվել է, որ 'SECURITY INVOKER' ֆունկցիաները ձախողվում էին, քանի որ 'authenticated' դերը չուներ անհրաժեշտ թույլտվություններ: Լուծումը եղել է արտոնյալ գործողությունները 'SECURITY DEFINER' ֆունկցիաներով փաթեթավորելը՝ ապահովելով ադմինիստրատիվ ստուգում նախքան տվյալների փոփոխությունը: Նմանատիպ սխալների շարք հայտնաբերելուց հետո հեղինակը ստեղծել է սկաներ՝ 'INVOKER' ֆունկցիաները աուդիտի ենթարկելու համար: Այս փորձը ցույց է տալիս տողային և սյունակային անվտանգության մակարդակների տարբերակման կարևորությունը և առաջարկում է ավտոմատացված գործիքներ՝ արտադրական տվյալների բազաներում բարդ թույլտվությունները կառավարելու համար:
This is a summary. Read the full article at the original source:
Dev.toԿապակցված
Ես միացրեցի իմ ինը անսարք RimWorld մոդերը՝ տեսնելու, թե արդյոք գործակալը կարող է գտնել դրանք
Ծրագրավորողը ստեղծել է արհեստական բանականությամբ աշխատող գործակալ՝ RimWorld-ի բարդ մոդերի կոնֆիգուրացիաները կարգավորելու համար: Ավելի քան 200 մոդերի կ…
Անվտանգության հետազոտող Թոմաս Պտաչեկն իր վերջին բլոգային գրառման մեջ ուսումնասիրում է օպերացիոն համակարգի սահմանման էվոլյուցիան ժամանակակից հաշվողական…
YApi-ն լքված է 2022 թվականից. հայտնաբերվել են կրիտիկական խոցելիություններ և լուծումներ
API փաստաթղթավորման հայտնի YApi հարթակը, որն ունի ավելի քան 27 հազար աստղ GitHub-ում, 2022 թվականից ի վեր թարմացումներ չի ստացել: Սա հանգեցրել է լուրջ…



