یو څوک وړاندیز کوي چې پیرودونکي ته د PostgreSQL ننوتل ورکړل شي ترڅو د لګښت غوښتنه له سره تر پایه کوډ شوې سفر وکړي۔ د ډیټابیس مدیر حقیقي SQL ناستې ته اړتیا لري، او بل څوک پرځای یې ویب فورم وړاندیز کوي۔ دواړه وړاندیزونه غلطه ستونزه حل کوي، ځکه چې هیڅ یو هم د هغه عملیاتو څخه نه دی پیل شوی چې پیرودونکی واقعاً ترسره کوي۔ درې پرېکړې په ترتیب سره وګورئ او د دې پوښتنه چې ایا TLS کولی شي VPN ځای ونیسي پخپله ځواب ورکوي۔

له هغه عملیاتو پیل وکړئ چې پیرودونکي ته ورته اړتیا ده

ولیکئ چې پیرودونکی باید څه ترلاسه کړي۔ د غوښتنې سپارل، د راپور یو قطار لوستل او سملاسي پوښتنې چلول درې بېل عملیات دي چې د خطر بېل پروفایلونه لري۔

بیا ولیکئ چې غوښتنه څوک کوي۔ پیرودونکی، د ملاتړ استازی او مدیر یو بل ته د بدلیدو وړ نه دي حتی کله چې یوه جدول ته لاس وروړي۔ دا توپیر ټاکي چې پیرودونکی د پوښتنې ژبې څومره برخه باید هېڅکله وګوري۔

د ځوابونو جوړه انټرفیس ټاکي۔ له دې وروسته هر څه پلي کول دي، او د کوډ کولو په اړه ډیری بحثونه په حقیقت کې د دې بحث دی چې کوم انټرفیس غوره شو۔

درې کنټرولونه، درې پرېکړې

تصدیق شوی TLS اړیکه ساتي او ټاکي چې کومې TLS هویتونه منل کیږي۔ شبکې ته ننوتل ټاکي چې کومې سرچینې کولی شي اورېدونکي ته ورسېږي۔ د ډیټابیس اجازه ټاکي چې رول کوم شیان او کړنې کارولی شي۔

له دریو څخه هیڅ یو د نورو ځای نه نیسي، چې جدول یې روښانه کوي۔

ControlWhat it decidesWhat it leaves open
Authenticated TLSConnection protection and which TLS identities are acceptedWhich tables a database user may touch
Restricted network entryWhich sources reach the listenerWhether an authenticated user should run a given statement
Database authorizationWhich objects and actions a role may useWhether the connection arrived by an approved path

د بل قطار د لرې کولو مخکې هغه قطار ولولئ چې تاسو پرې تکیه لرئ۔ د دې ډیزاینونو ډیری ناکام کیږي ځکه چې کنټرول د تنظیم کولو پرځای فرض شوی و۔

مستقیم SQL د ډیټابیس پالیسي مسؤله ساتي

د تصویب شوې مستقیمې اړیکې سره د خدمت هویت تصدیق او ټاکل شوې لاسرسي پالیسي دواړه وساتئ۔ TLS فعالول کوډ شوې اړیکې شته کوي؛ دا غیر کوډ شوې نه ردوي پرته له دې چې د لاسرسي تنظیمات د hostssl داخلونو له لارې داسې ووایي۔

دا توپیر په روان تنظیماتو کې د ازموینې وړ دی نه په کالب کې۔ هغه سرور چې TLS وړاندیز کوي او ساده متن مني هغه ډیزاین نه دی چې ډیری خلک فکر کوي نصب کړی یې دی۔ د لاسرسي قواعد ولولئ او وګورئ کوم داخلونه واقعاً د دې غوښتنه کوي۔ همدا یوه ازموینه د کوډ کولو وړ سرور له یوازې کوډ شوي سرور څخه بېلوي۔

یوازې هغه رولونه وکاروئ چې د کار لپاره اړین امتیازات لري، او مالکیت، میراثي غړیتوب او پراخه ورکړل شوې اجازې بیاکتنه کړئ۔ د PostgreSQL امتیازاتو ماډل د ډیټابیس شیانو لپاره د واک حد دی۔

VPN کولی شي محدود کړي چې کوم وسیلې د ډیټابیس تصدیق مخکې خدمت ته رسیږي، او د لاسرسي ګېټوې ورته ورته کار کولی شي۔ هیڅ یو هم د افشا شوي برخې ساتنې، اعتبارنامو مدیریت او د سرچینو کارولو محدودولو اړتیا نه لرې کوي۔

د پیرودونکي سندونه یو اعتبار دی، ACL نه دی

د پیرودونکي سند کولی شي د اړیکې په وخت کې یو شرط اضافه کړي۔ clientcert تنظیم کولی شي باوري سند او په سخت حالت کې د سند نوم او د ډیټابیس کاروونکي ترمنځ اړیکه وغواړي۔

دا پیاوړی اعتبار دی۔ دا د اجازې لیست نه دی، او سرور ناڅرګند نه کوي، ځکه چې د اړیکې منونکې برخه لا هم شبکه ترافیک او لاس ورکول پروسس کوي۔ سند د لاسرسي لیست په توګه ګڼل واقعي اجازې نه لمس کوي۔ دا هم د سندونو وېش پراخولو ته تمایل لري، چې بل مشکل رامنځته کوي۔

پیاوړی سند چې له ډیرو امتیازاتو سره رول ته تړل شوی وي ښه تصدیق شوی مدیر جوړوي۔ د سند جشن مخکې رول وګورئ۔

کله چې مناسب وي تنګ انټرفیس غوره کړئ

د لګښت غوښتنې لپاره، هغه اپلیکیشن پای ټکی چې غوښتنه مني، سوداګریز قواعد پلي کوي او د هغه کاروونکي اجازه شوې پایله بیرته ورکوي، عملیات له عمومي SQL حساب څخه ښه استازیتوب کوي۔

بیا اپلیکیشن خپل محدود ډیټابیس هویت کاروي، او پیرودونکی هېڅکله د ځانګړتیا په توګه پوښتنې ژبه نه ترلاسه کوي۔ دا کوچنۍ سطحه ده چې د غلطیدو لږې لارې لري۔

دا د ډیزاین انتخاب دی، نه دا ادعا چې اپلیکیشن کوډ په اتوماتيک ډول خوندي دی۔ هغه کوډ باید خپل غږوونکي تصدیق کړي، هر عمل ته اجازه ورکړي او خپل ان پټ تایید کړي، او د هغه خپل ډیټابیس اجازې لا هم مهمې دي۔

مستقیم SQL د هغو خلکو او وسیلو لپاره سم پاتې کیږي چې تصویب شوی کار یې د دې غوښتنه کوي۔ هغه ډیزاین د رولونو، شبکې ساحې او عملیاتي محدودیتونو سره مشروط کړئ، او نور پیرودونکي تنګ انټرفیس وساتي۔ د دوو ډلو یوځای کول په یو رول کې هغه ځای دی چې بحثونه پیل کیږي۔

اړوندې مقالې