နိဒါန်း
အင်တာနက်အလျင်အမြန်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်အတူလုံခြုံရေးဝက်ဘ်ဆိုက်နှင့်လျှောက်လွှာဖွံ့ဖြိုးတိုးတက်မှုတွင်လုံခြုံရေးသည်အဓိကပြ issue နာဖြစ်လာသည်။ အထူးသဖြင့် PHP ဘာသာစကားဖြင့်တီထွင်ထားသောဝက်ဘ်ဆိုက်များတွင်လုံခြုံရေးစစ်ဆေးမှုနှင့်ခွင့်ပြုချက်နည်းပညာများအကောင်အထည်ဖော်မှုသည်အလွန်အရေးကြီးသည်။ ဤဆောင်းပါးသည်ဘုံ PHP လုံခြုံရေးအတည်ပြုချက်နှင့်ခွင့်ပြုချက်နည်းပညာများကိုမိတ်ဆက်ပေးပြီး developer များက 4 င်းတို့၏ဝက်ဘ်ဆိုက်များလုံခြုံရေးကိုတိုးတက်စေရန်ကူညီရန်သက်ဆိုင်သောကုဒ်များဥပမာများကိုပေးလိမ့်မည်။
1 ။ အသုံးပြုသူ login authentication အတည်ပြုအတည်ပြုခြင်း
အသုံးပြုသူ login authentication စစ်ဆေးခြင်းသည်အခြေခံအကျဆုံးနှင့်ဘုံလုံခြုံရေးအတည်ပြုခြင်းနည်းပညာဖြစ်သည်။ သုံးစွဲသူ၏အသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုအတည်ပြုခြင်းအားဖြင့် 0 က်ဘ်ဆိုက်၏အထိခိုက်မခံသောအချက်အလက်နှင့်အင်္ဂါရပ်များကိုသာ 0 င်ရောက်နိုင်ရန်တရားဝင်အသုံးပြုသူများသာ 0 က်ဘ်ဆိုက်၏အထိခိုက်မခံသောအချက်အလက်များနှင့်အင်္ဂါရပ်များကိုရယူနိုင်ကြောင်းသေချာစေပါ။ ဤတွင်ရိုးရှင်းသောအသုံးပြုသူ login verification code support:
<?php
session_start();
// အသုံးပြုသူ login စိစစ်အတည်ပြု
function login($username, $password) {
// အသုံးပြုသူအချက်အလက်ကိုဒေတာဘေ့စ်မှရရှိသည်ဟုယူဆပါ
$userData = getUserData($username);
// အသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုအတည်ပြုပါ
if ($userData && $userData['password'] == md5($password)) {
$_SESSION['username'] = $username;
return true;
} else {
return false;
}
}
// အသုံးပြုသူ logged in ဝင်ပါကစစ်ဆေးပါ
function checkLogin() {
return isset($_SESSION['username']);
}
// လက်ရှိ logged-in အသုံးပြုသူအချက်အလက်ကိုရယူပါ
function getCurrentUser() {
return getUserData($_SESSION['username']);
}
// Log Out
function logout() {
unset($_SESSION['username']);
session_destroy();
}
// အသုံးပြုသူအချက်အလက်ရယူပါ,ဒီမှာသာဥပမာတစ်ခုပါ
function getUserData($username) {
// ဒေတာဘေ့စ်သည်အသုံးပြုသူအချက်အလက်များကိုမေးမြန်းသည်ဟုယူဆပါ
$userData = array(
'username' => 'admin',
'လျှို့ဝှက်နံပါတ်' => MD5 ('123456'),
'အီးမေးလ်' => 'admin@exple.com',
// အခြားအသုံးပြုသူနှင့်သက်ဆိုင်သောအချက်အလက်များ);
$ userData ပြန်လာ;
}
>
အထက်ပါကုဒ်ကို အသုံးပြု. အသုံးပြုသူသည်လော့ဂ်အင်လုပ်ခြင်းရှိမရှိစစ်ဆေးရန်သင်အသုံးပြုသူ login ကိုစစ်ဆေးရန်လိုအပ်သည့်စာမျက်နှာပေါ်တွင် `checklogin () function ကိုသင်ဖုန်းခေါ်နိုင်သည်။ အကယ်. log in ဝင်မ 0 င်ပါက login စာမျက်နှာသို့ခုန်ချလိမ့်မည်။ အကယ်. ၎င်းသည် log in လုပ်ပါက၎င်းသည်စီးပွားရေးယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်သွားမည်ဖြစ်သည်။ လော့အင်စာမျက်နှာပုံစံကိုတင်ပြသည့်အခါအသုံးပြုသူမှထည့်သွင်းထားသောအသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုအတည်ပြုရန် `login () function ကိုသင်ခေါ်ဆိုနိုင်သည်။
2 ။ Access Control List (ACL)
Access Control Lists (ACLS) သည်မတူညီသောအသုံးပြုသူများက 0 က်ဘ်ဆိုက်အရင်းအမြစ်များကို 0 င်ရောက်ခြင်းကိုကန့်သတ်ထားသည့်နည်းပညာဖြစ်သည်။ ACL နည်းပညာဖြင့်အသုံးပြုသူများသည်မတူညီသောစာမျက်နှာများ, လုပ်ငန်းဆောင်တာများနှင့်အရင်းအမြစ်များကိုဝင်ရောက်ခွင့်အခွင့်အရေးများကိုပြောင်းလွယ်ပြင်လွယ်ထိန်းချုပ်နိုင်သည်။ ဤတွင်ရိုးရှင်းသော ACL နမူနာကုဒ်ဖြစ်သည်။
<?php
// အသုံးပြုသူအတွက်လက်ရှိ logged ကြောင်းယူဆ
$user = getCurrentUser();
// Access Control List
$acl = array(
'admin' => Array ('admin.php', 'user.php', 'post.php'),
'User' => Array ('user.php', 'post.php'),
'guest ည့်သည်' => Array ('index.php')
);
// အသုံးပြုသူသည်လက်ရှိစာမျက်နှာ function check checkaccess ($ အသုံးပြုသူ, $ စာမျက်နှာ) ကိုရယူရန်ခွင့်ပြုချက်ရှိမရှိစစ်ဆေးပါ။
ကမ္ဘာလုံးဆိုင်ရာ $ ACL;
IF (ISSET ($ acl [$ user [']]))))
in_array ($ စာမျက်နှာ, $ acl [$ user]]));
}
တုံ့ပြန်ပါ။
}
// အသုံးပြုမှုဥပမာဖြစ်နိုင်လျှင် (checkaccess ($ အသုံးပြုသူ, 'user.php'))
// အသုံးပြုသူသည် User.php စာမျက်နှာ // သက်ဆိုင်ရာစီးပွားရေးယုတ္တိဗေဒကိုလုပ်ဆောင်ရန်ခွင့်ပြုချက်ရှိသည်။
// အသုံးပြုသူသည် user.php page // error.php စာမျက်နှာ // အမှားအယွင်းကိုပြန်ပို့ရန်ခွင့်ပြုချက်မရှိပါ။
>
အထက်ပါကုဒ်တွင် `$ အသုံးပြုသူ ['` `` `admin', 'admin admin', 'ender', 'ender ည့်သည်', etc ။ `$ ACL` Array သည်အသုံးပြုသူ၏အခန်းကဏ် access ကိုမတူညီသောစာမျက်နှာများကိုသတ်မှတ်သည်။ လက်တွေ့ကျသောအပလီကေးရှင်းများ၌ `$ ACL` Array သည်မတူညီသောခွင့်ပြုချက်လိုအပ်ချက်များကိုလိုက်လျောညီထွေဖြစ်အောင်လုပ်ရန်လိုအပ်ချက်များနှင့်အညီချိန်ညှိနိုင်သည်။
အကျဉ်းချုပ်
ဤဆောင်းပါးသည် PHP လုံခြုံရေးအတည်ပြုချက်နှင့်ခွင့်ပြုချက်နည်းပညာကိုအကောင်အထည်ဖော်ရန်နှင့်သက်ဆိုင်ရာစာရွက်စာတမ်းများကိုဥပမာပေးသည်။ အသုံးပြုသူ login authentication စစ်ဆေးခြင်းစစ်ဆေးခြင်းနှင့် Access Control Lists (ACLS) သည်ဝက်ဘ်ဆိုက်များနှင့်အသုံးချပရိုဂရမ်များ၏လုံခြုံရေးကိုသေချာစေရန်အလွန်အရေးကြီးသည့်ဘုံလုံခြုံရေးဆိုင်ရာစစ်ဆေးမှုများနှင့်ခွင့်ပြုချက်နည်းစနစ်များဖြစ်သည်။ developer များအသုံးပြုသူ input နှင့်အထိခိုက်မခံသောသတင်းအချက်အလက်များကိုကာကွယ်ရန်တိကျသောလိုအပ်ချက်များအရဤနည်းပညာများကိုအသေးစိတ်သုံးရန်လိုသည်။