سم شوی mac.py چې هېڅ نه بدلوي، عادي لومړنۍ نښه ده. په ډیسک کې فایل هغه نه دی چې Access Server یې چلوي؛ د تصدیق خدمت سکریپټ د سرور له کنفیګ ډیټابیس څخه باروي، او همدا ساتل شوې کاپي د ننوتلو پرېکړه کوي. تر هغې چې ساتل شوی ارزښت بدل نه شي، هر ازموینه یوازې دا ثابتوي چې زوړ سکریپټ لا هم کار کوي.

کار درې شرطونه پرېکوي: ارزښت کله هم کنفیګ ډیټابیس ته اېښودل شوی و که نه، خدمت ته د بیا بارولو حکم ورکړل شوی و که نه، او ستاسو بدل شوی کوډ په هر اړیکه کې واقعاً چلېږي که نه. هر یو بېله نښه لري، او غلط سمول د ساتنې وخت ضایع کوي.

فایل سرچینه ده، نه چلېدونکې کاپي

Access Server د post-auth سکریپټ د auth.module.post_auth_script کلي لاندې ساتي. فایل سمول یوازې ستاسو کاري کاپي تازه کوي. ډیمون ساتل شوی ارزښت لولي، له همدې کبله بدلون تر هغې پټ پاتې کېږي چې زوړ داخل حذف کړئ او نوی فایل د هغه په ځای کېږدئ. همدا ساتل شوی ارزښت یوازینې کاپي ده چې د تصدیق خدمت ګوري.

له بدلولو دمخه یې ولولئ. که له هغه فایل سره سمون ولري چې تاسو سم کړی، ستونزه په ذخیره کې نه ده او د حد پوښتنې ته ورشئ. که زوړ نسخه وښیي، بدلون خدمت ته نه دی رسېدلی.

./sacli -k auth.module.post_auth_script ConfigGet

ساتل شوې کاپي بدله کړئ، بیا یې پلي کړئ

له لیکلو دمخه حذف کول ښکلا نه ده. ConfigPut د --value_file سره ارزښت په یوه ګام کې بدلوي، او لومړی ConfigDel کول د زوړ یا خراب داخل پاتې کېدل ناممکن کوي. له پیل دمخه د چلېدونکي سکریپټ کاپي د سکریپټ فولډر څخه بهر وساتئ.

./sacli -k auth.module.post_auth_script ConfigDel
# store the file, then apply it
./sacli -k auth.module.post_auth_script --value_file=/root/post_auth.py ConfigPut
./sacli start

sacli start بدل شوی کنفیګ د داخلي خدمتونو په سر پلي کوي، او همدا نوی سکریپټ نافذوي. دا د ټول ماشین یا ډیمون له بیا چالانولو سره یو شان نه دی، او که ستاسو بدلون یې غوښتنه نه کوي، باید په دې بدل نه شي.

د ارزښت فایل لپاره مطلق لار وکاروئ او ډاډ ترلاسه کړئ چې root یې لولی شي. هغه لار چې ستاسو له شیل څخه حل کېږي خو د خدمت له حساب څخه نه، ساتل شوی ارزښت ورکوي چې په ConfigGet کې سم ښکاري او په لومړي ننوتلو کې ناکامېږي. له sacli start وروسته یو ځل بیا ساتل شوی پایله وګورئ، نه دمخه.

د ماډول حد که د هرې اړیکې لپاره: پوښتنه چېرې باید وي

Python د ماډول کچې جملې یو ځل چلوي، کله چې سکریپټ بار شي. نو په فایل سر کې لیکل شوې د ډیټابیس پوښتنه د بارېدو پر مهال جدول لولي او هغه ځواب د هرې راتلونکې اړیکې لپاره ساتي. دا دوهم لامل دی چې بدلون هېڅ نه کوي ښکاري: کوډ چلېږي، خو نه هغه وخت چې تاسو تمه لرئ.

پوښتنه د post_auth اداره کوونکي دننه کېږدئ تر څو د هر تصدیق لپاره چل شي. مستند لاسلیک وساتئ، هغه تصدیق پایله سمه کړئ چې اداره کوونکی یې ترلاسه کوي، او د خالي عدد پر ځای همغه شی بیرته راکړئ.

د اړیکې مدیریت هم د اداره کوونکي دننه وساتئ. هغه اړیکه چې د وارداتو پر مهال پرانیستل کېږي، ممکن سرور یې د لومړي کارونکي له ننوتلو دمخه وتړي، او رامنځته شوې تېروتنه د مات شوي سکریپټ پر ځای د رد شوو اعتبارنامو په څېر ښکاري.

د رد دوه لارې، یو مالک

که پرېکړه ځایي پوښتنه وي، پایله د Python اداره کوونکي ملکیت دی. که بهرنۍ HTTP کتنه وي، د حکم د وتلو حالت دې ځواب وړي: هغه پوښ چې په غیر صفر کوډ وځي ننوتل ردوي، او د وروستي حکم حالت پرته له ښکاره exit د سکریپټ حالت ګرځي.

پټ راز د پروسو لیست څخه بهر وساتئ. هغه فایل چې root یې لولی شي یا هغه چاپېریالي ارزښت چې خدمت یې لېږي، له هغه استدلال څخه خوندي دی چې هر ځایي کارونکی یې له ps لولي شي. له بل دمخه پای ټکی په یوه بدلېدونکي کې ټینګ کړئ، تر څو ټایپ غلطي د کنفیګ پر مهال ناکامه شي، نه د چا د ننوتلو پر مهال. هغه راز لکه نورې اعتبارنامې په دوره یي ډول بدلوئ.

د هرې کتنې لپاره یو مالک وټاکئ. هغه سکریپټ چې هم ډیټابیس پوښتنه کوي او هم HTTP خدمت غواړي، د دې حالت لپاره چې دواړه سره مخالف وي، اعلان شوې لومړیتوب قاعده غواړي، که نه د لاګ کې د رد دلیل د کارونکي سره ویل شوي سره سمون نه خوري.

پرته له دې چې مدیر بند شي پلي یې کړئ

دوه ساتنې بدلون د بیرته راګرځېدو وړ کوي: دوهم مدیر حساب چې سکریپټ ته تړلی نه وي، او یوه پېژندل شوې ښه کاپي چې د سکریپټ فولډر څخه بهر ساتل کېږي. بدلون د ساتنې په وخت کې پلي کړئ، بیا له جلا کېدو دمخه یو ازموینه ننوتل او یو قصدي رد وګورئ. که لاګ د تصدیق پرېکړې پر ځای نحوي تېروتنه وښیي، ساتل شوی سکریپټ مات دی او هر ننوتل به ناکام شي.

دوه شرطونه وایي انتظار وکړئ: تاسو نشئ کولی د ارزښت فایل د root په توګه ولولئ، یا د مدیر لید ته دوهمه لار نه لرئ. دواړه کوچنی بدلون په بندېدو بدلوي، او هیڅ یو یې د ورځې په پای کې په تولیدي سرور کې د ازموینې وړ نه دی. د Access Server اسناد د post-auth لید او د هغه ملاتړ شوي ساحې پوښي.

اړوندې مقالې