လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP application များ၏လုံခြုံမှု authentication ကိုအကောင်အထည်ဖော်ရန် Olamam ကိုအသုံးပြုနည်း

PHP application များ၏လုံခြုံမှု authentication ကိုအကောင်အထည်ဖော်ရန် Olamam ကိုအသုံးပြုနည်း

M66 2025-07-09

နိဒါန်း

0 က်ဘ်အပလီကေးရှင်းများကိုတီထွင်သောအခါအသုံးပြုသူအချက်အလက်နှင့် authentication ၏လုံခြုံရေးကိုသေချာစေရန်အလွန်အရေးကြီးသည်။ အထောက်အထား authentication ယန္တရားသည်အသုံးပြုသူ၏မည်သူမည်ဝါဖြစ်ကြောင်းထိထိရောက်ရောက်အတည်ပြုနိုင်ရန်နှင့်စနစ်၏လုံခြုံမှုကိုသေချာစေနိုင်သည်။ PHP applications များကိုလုံခြုံရေးစစ်ဆေးရန်အတွက် Open OpenAn သည် open source အထောက်အထားစီမံခန့်ခွဲမှုနှင့်ဆက်သွယ်မှုထိန်းချုပ်မှုဖြေရှင်းချက်ဖြစ်သည်။

ဤဆောင်းပါးသည် PHP application များ၏လုံခြုံမှုရှိရှိ authentication ကိုအကောင်အထည်ဖော်ရန် OpenAM ကိုမည်သို့အသုံးပြုရမည်ကိုပြသမည်ဖြစ်ပြီး developer များလျင်မြန်စွာစတင်ရန်ကူညီရန်သက်ဆိုင်ရာကုဒ်နမူနာများပါ 0 င်မည်ဖြစ်သည်။

Openam ကို install လုပ်ပြီး configure လုပ်ပါ

သင်မစခင် OpenAM ကို download လုပ်ပြီး Install လုပ်ရန်လိုအပ်သည်။ installation လုပ်ငန်းစဉ်အတွင်းသင် 0 က်ဘ်ဆိုက် URL နှင့် OpenAn ကိုဖွင့်ပြီး OpenAnt ကိုမှန်ကန်စွာ configure လုပ်ပြီးသက်ဆိုင်ရာလုံခြုံရေးချိန်ညှိချက်များနေရာ၌သေချာစေရန်လုံခြုံပြီးစိတ်ချရသောဆာဗာပတ်ဝန်းကျင်တွင်ထည့်သွင်းရန်လိုအပ်သည်။

authentication ကိုအကောင်အထည်ဖော်ရန် PHP applications များကိုဖန်တီးပါ

နောက်ပြီးကျွန်ုပ်တို့၏ PHP application ၏ root directory တွင် login.php ဖိုင်ကိုဖွင့်ပြီး OpyAn မှပေးသော api မှပေးသော api မှပေးသော API မှပေးသော Api ကိုအသုံးပြုပါမည်။

 <?php
// အဓိပါ်ပယ် OpenAM ဆာဗာ၏ URL
$openam_url = "http://localhost:8080/openam";

// အသုံးပြုသူမှထည့်သွင်းထားသောအသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုလက်ခံရရှိသည်
$username = $_POST['username'];
$password = $_POST['password'];

// အသုံးပြုသူ login တောင်းဆိုမှုကိုတည်ဆောက်ပါ URL
$login_url = $openam_url . "/json/authenticate";

// အသုံးပြုသူအတည်ပြုချက်ကိုတည်ဆောက်ရန် URL
$validate_url = $openam_url . "/json/users/" . $username . "/isTokenValid";

// အသုံးပြုသူဝင်ခွင့်တောင်းခံမှုကိုတည်ဆောက်ပါ URL
$logout_url = $openam_url . "/json/sessions/?_action=logout";

// အသုံးပြုသူအစည်းအဝေးများတည်ဆောက်ရန်တောင်းဆိုမှုများ URL
$session_url = $openam_url . "/json/sessions";

// အသုံးပြုသူ login
$login_data = array(
  'username' => $username,
  'password' => $password,
  'realm' => '/'
);
$login_response = json_decode(callOpenAMApi($login_url, $login_data));

// 验证အသုံးပြုသူ login是否成功
if ($login_response->tokenId) {
  // အသုံးပြုသူ login成功

  // အသုံးပြုသူ session ကိုသတင်းအချက်အလက်ရယူပါ
  $session_response = json_decode(callOpenAMApi($session_url, null, $login_response->tokenId));

  // အသုံးပြုသူ session ကိုတရားဝင်ကြောင်းအတည်ပြုပါ
  $validate_response = json_decode(callOpenAMApi($validate_url, null, $login_response->tokenId));

  if ($validate_response->boolean) {
    // အသုံးပြုသူအတည်ပြုချက်လွန်

    // အခြားစစ်ဆင်ရေးလုပ်ဆောင်,ဥပမာအားဖြင့်အသုံးပြုသူအချက်အလက်များကိုစသဖြင့်ရယူပါ။

    // အသုံးပြုသူ logout
    callOpenAMApi($logout_url, null, $login_response->tokenId);
    echo "Logout Successful";
  } else {
    // အသုံးပြုသူအတည်ပြုချက်မအောင်မြင်ပါ
    echo "Invalid Session";
  }
} else {
  // အသုံးပြုသူ login失败
  echo "Login Failed";
}

// တောင်းဆိုမှုကိုပေးပို့ပြီးတုံ့ပြန်မှုရလဒ်ကိုပြန်ပို့ပါ
function callOpenAMApi($url, $data = null, $token = null) {
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, array('iPlanetDirectoryPro: ' . $token));

  if ($data) {
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
  }

  $response = curl_exec($ch);
  curl_close($ch);

  return $response;
}
?>

လျှောက်လွှာကိုစမ်းသပ်ပါ

Login.php စာမျက်နှာသို့သွားပြီး Username နှင့် Password ကိုရိုက်ထည့်ပါ, login ခလုတ်ကိုနှိပ်ပါ။ အကယ်. authentication အောင်မြင်မှုအောင်မြင်ပါကစာမျက်နှာသည် "logout အောင်မြင်သော" ကိုပြလိမ့်မည်။ အကယ်. မအောင်မြင်ပါကစာမျက်နှာသည် "login မအောင်မြင်ပါ" ဟူသောအချက်ကိုသတိပေးလိမ့်မည်။

မှတ်သားရန်အရာ

  • Openam ကို install လုပ်ထားကြောင်းသေချာပါစေ, မှန်ကန်စွာပြင်ဆင်ပြီး 0 န်ဆောင်မှုသည်ကောင်းမွန်စွာလည်ပတ်နေသည်။
  • PHP ပတ်ဝန်းကျင်ကတောင်းဆိုမှုများနှင့်လုပ်ငန်းစဉ်တုံ့ပြန်မှုများကိုပေးပို့ရန် Curl functions များကိုထောက်ပံ့ကြောင်းအတည်ပြုပါ။

အကျဉ်းချုပ်

ဤဆောင်းပါးမှတစ်ဆင့်သင်၏ PHP applications များ၌လုံခြုံမှုရှိကြောင်းသက်သေစွမ်းရည်များထည့်သွင်းရန် Olam ကိုမည်သို့အသုံးပြုရမည်ကိုသင်လေ့လာသိရှိခဲ့ရသည်။ Openam ရဲ့အနားယူရာအပိုဆောင်းနဲ့သုံးစွဲသူဒေတာလုံခြုံရေးကိုထိထိရောက်ရောက်ကာကွယ်နိုင်ရုံသာမကအသုံးပြုသူလက်လှမ်းမီမှုအတွေ့အကြုံကိုပိုကောင်းအောင်လုပ်နိုင်ပါတယ်။ သင်၏ဖွံ့ဖြိုးတိုးတက်မှုဆိုင်ရာကြိုးပမ်းမှုများအတွက်ဤလမ်းညွှန်သည်အထောက်အကူဖြစ်လိမ့်မည်ဟုမျှော်လင့်ပါသည်။