လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Cakepp မူဘောင်ကိုခွင့်ပြုချက်ထိန်းချုပ်ရန်အကောင်အထည်ဖော်မှုလမ်းညွှန်

Cakepp မူဘောင်ကိုခွင့်ပြုချက်ထိန်းချုပ်ရန်အကောင်အထည်ဖော်မှုလမ်းညွှန်

M66 2025-08-07

ခွင့်ပြုချက်ထိန်းချုပ်မှုကိုအကောင်အထည်ဖော်ရန်သော့ချက်အဆင့်များ Cakepp Framework ကို အသုံးပြု. အကောင်အထည်ဖော်ရန်

ခွင့်ပြုချက်ထိန်းချုပ်မှုသည်ဝက်ဘ်လျှောက်လွှာဖွံ့ဖြိုးတိုးတက်မှုတွင်မရှိမဖြစ်လိုအပ်သောလက်ခဏာဖြစ်သည်။ Cakepho ၏စီမံခန့်ခွဲမှုစီမံခန့်ခွဲမှုစီမံခန့်ခွဲမှုစီမံခန့်ခွဲမှုစီမံခန့်ခွဲမှုစီမံခန့်ခွဲမှုယန္တရားသည် developer များကခွင့်ပြုချက်ထိန်းချုပ်ရေးလုပ်ငန်းစဉ်ကိုအကောင်အထည်ဖော်မှုလုပ်ငန်းစဉ်ကိုရိုးရှင်းစေနိုင်သည်။ ခွင့်ပြုချက်ထိန်းချုပ်မှုကိုအကောင်အထည်ဖော်ရန် CakephoT Framework ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးသည်တဖြည်းဖြည်းမိတ်ဆက်ပေးလိမ့်မည်။

Cakepp မူဘောင်ကို install လုပ်ပါ

ပထမ ဦး စွာ, သငျသညျဖွံ့ဖြိုးရေးပတ် 0 န်းကျင်ရှိ CakephoP မူဘောင်ကို install လုပ်ရန်လိုအပ်သည်။ ၎င်းကို composer မှတဆင့် install လုပ်နိုင်သည်သို့မဟုတ် source code ကိုတရားဝင်ဝက်ဘ်ဆိုက်မှကူးယူနိုင်သည်။ ထည့်သွင်းပြီးပြီးပါကခွင့်ပြုချက်ထိန်းချုပ်ရေး configuration ကိုစတင်ရန် Cakepho application အသစ်တစ်ခုကိုဖန်တီးပါ။

ခွင့်ပြုချက်ထိန်းချုပ်မှုအတွက် Auth Components ကို configure

Cakepho တွင်ခွင့်ပြုချက်ထိန်းချုပ်မှုသည်အဓိကအားဖြင့် MASTCHOCTONE အစိတ်အပိုင်းအပေါ်အဓိကထားသည်။ application controller တွင်ဤအစိတ်အပိုင်းကိုတင်ခြင်းအားဖြင့်ခွင့်ပြုချက်စစ်ဆေးခြင်းနှင့်မည်သူမည်ဝါဒီမှုကိုအလွယ်တကူသတ်မှတ်နိုင်သည်။

 // တည်နေAppController.phpဖိုင်ထဲမှာ
public function initialize()
{
    parent::initialize();
    $this->loadComponent('Auth', [
        'authorize' => 'Controller',
        'authenticate' => [
            'Form' => [
                'fields' => [
                    'username' => 'email',
                    'password' => 'password'
                ]
            ]
        ],
        'loginAction' => [
            'controller' => 'Users',
            'action' => 'login'
        ],
        'unauthorizedRedirect' => $this->referer()
    ]);
}

Code တွင် loadcomprent method သည် Authentication Method ကိုဖွင့်ပြီး 'Authorize' parameter သည်ခွင့်ပြုချက်စနစ်ကိုသတ်မှတ်ပြီး Controller အဆင့်ကိုသတ်မှတ်သည်။ Form authentication အတွက်လိုအပ်သောကွက်လပ်များကို 'authenticate' configries 'loginaction' သည်ခွင့်ပြုချက်မရသော 0 င်ရောက်ခွင့်မပြုသည့်အခါ "ခွင့်ပြုချက်မရသော 0 င်ရောက်မှုကို" ခွင့်ပြုချက်မရပါ။

ခွင့်ပြုချက်စည်းမျဉ်းစည်းကမ်းများသတ်မှတ်ပါ

ခွင့်ပြုချက်စည်းမျဉ်းများကို Controller ရှိ Isauthorized နည်းလမ်းဖြင့်သတ်မှတ်သည်။ ဤနည်းလမ်းသည်လက်ရှိအသုံးပြုသူသည်တောင်းဆိုထားသောစစ်ဆင်ရေးကိုလုပ်ဆောင်ရန်အခွင့်အရေးရှိ / မရှိကိုဆုံးဖြတ်သည်။

 // တည်နေUsersController.phpဖိုင်ထဲမှာ
public function isAuthorized($user)
{
    $action = $this->request->getParam('action');

    if (in_array($action, ['edit', 'delete'])) {
        $userId = $this->request->getParam('pass.0');
        if ($userId == $user['id']) {
            return true;
        }
    }

    return parent::isAuthorized($user);
}

ဤတွင်, ပထမ ဦး စွာတောင်းဆိုထားသောစစ်ဆင်ရေးအမည်ကိုရယူပါ။ ခွင့်ပြုချက်လိုအပ်သည့်တည်းဖြတ်ခြင်းနှင့်ဖျက်ခြင်းလုပ်ငန်းများအတွက်သုံးစွဲသူ ID ကိုခွဲစိတ်ကုသမှု parameters များနှင့်လက်ရှိ log in ဝင်သော User ID တွင်ထပ်မံနှိုင်းယှဉ်ပါ။ ပွဲပြီးပြီဆိုရင်ခွင့်ပြုပါ။ ဒီလိုမှမဟုတ်ရင်မိဘအတန်းအစားနည်းလမ်းကိုပုံမှန်ခွင့်ပြုချက်တရားစီရင်ချက်အတွက်တောင်းဆိုလိမ့်မည်။

အမြင်အတွက်သက်ဆိုင်ရာခွင့်ပြုချက် link ကိုပြပါ

အသုံးပြုသူ 0 င်ရောက်မှုကိုတိုးတက်စေရန်အသုံးပြုသူသည်လော့ဂ်အင်ဝင်ရန်,

 // တည်နေ视图ဖိုင်ထဲမှာ
if ($this->Auth->user()) {
    echo $this->Html->link('Logout', ['controller' => 'Users', 'action' => 'logout']);
} else {
    echo $this->Html->link('Login', ['controller' => 'Users', 'action' => 'login']);
}

အသုံးပြုသူ၏ login status ကိုဆုံးဖြတ်ရန် Auth Component ၏အသုံးပြုသူ၏နည်းလမ်းကိုအသုံးပြုပါ။ login လုပ်သည့်အခါ "Logout" link ကိုဖွင့်ပြီး login လုပ်သည့်အခါ login "link ကိုပြသထားပြီးအသုံးပြုသူများသည်လည်ပတ်ရန်အဆင်ပြေသည်။

အကျဉ်းချုပ်

Cakepp မူဘောင်ကို install လုပ်ခြင်းအားဖြင့် Auth Components များကို configure လုပ်ခြင်းဖြင့်ခွင့်ပြုချက်စည်းမျဉ်းများကိုသတ်မှတ်ခြင်း, အထက်ပါနမူနာကုဒ်သည်သင်၏လျှောက်လွှာ၏လုံခြုံရေးနှင့်ပြောင်းလွယ်ပြင်လွယ်မှုကိုသေချာစေရန် Cakephp အခြေပြုခွင့်ပြုချက်စီမံခန့်ခွဲမှုဖြေရှင်းချက်ကိုနားလည်သဘောပေါက်ရန်နှင့်အကောင်အထည်ဖော်ရန်ကူညီသည်။

မကြာသေးမီ ဆောင်းပါးများ