JWT (JSON Web Token) သည် authentication အတွက် Open standard ဖြစ်သည်။ 0 န်ဆောင်မှုခံယူသူနှင့်ဆာဗာအကြားလုံခြုံမှုဆိုင်ရာသတင်းအချက်အလက်များကိုဖြတ်သန်းခြင်းအားဖြင့်အသုံးပြုသူမည်သူမည်ဝါဖြစ်ကြောင်းသက်သေပြရန်ဖြစ်သည်။ JWT တွင်အစိတ်အပိုင်းသုံးပိုင်း - header, payload နှင့် signature ပါဝင်သည်။ ၎င်းတို့အနက် header သည် algorithm ကိုအမှတ်အသားပြုသည်, Payload သည်အသုံးပြုသူအချက်အလက်များကိုသိုလှောင်ထားပြီး,
1 ။ နိုင်ငံမဲ့ - jwt token သည် session အချက်အလက်များကိုသိမ်းဆည်းရန်ဆာဗာမလိုအပ်ပါ။
2 ။ လုံခြုံရေး - JWT သည်ဒေတာများကိုရှောင်ရှားရန်လက်မှတ်များ မှနေ. အချက်အလက်များ၏သမာဓိနှင့်စစ်မှန်မှုကိုသေချာစေသည်။
3 ။ စကေး - JWT ၏ဝန်သည်မည်သည့်လိုအပ်သောသတင်းအချက်အလက်ကိုမဆိုသိမ်းဆည်းထားပြီး application အမျိုးမျိုးအတွက်သင့်တော်သည်။
JWT ကို TerryPhp မူဘောင်အတွင်းရှိ JWT ကိုအသုံးပြုရန် FORKBASE / PHPT-JWT` jwt` jwt` jwt` jwt` jwy ကို install လုပ်ဖို့လိုတယ်။ သင် composer ကို install လုပ်ရန်သုံးနိုင်သည်။ command သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span class="fun">တေးရေးဆရာက Firebase / Php-jwt လိုအပ်သည်</span>
JWT ကိုထုတ်လုပ်ခြင်းလုပ်ငန်းစဉ်တွင်ခေါင်းစီးတစ်ခုဖန်တီးရန်, payload တစ်ခုစီတင်ပြီး payload တစ်ခုချခြင်းနှင့်ကိုယ်ပိုင်သော့ဖြင့်လက်မှတ်ထိုးခြင်းတို့ပါဝင်သည်။ TherfPP တွင် Methods များကို JWTS ထုတ်လုပ်ရန် Controller တွင်ရေးသားနိုင်သည်။ ဒီမှာနမူနာကုဒ်တစ်ခုပါ။
use Firebase\JWT\JWT;
class UserController extends Controller {
public function createJwt($userId, $username) {
$key = 'your_secret_key';
$payload = array(
'user_id' => $userId,
'username' => $username,
'exp' => time() + 3600 // သက်တမ်းကုန်ဆုံးချိန်ကိုသတ်မှတ်ပါ1နာရီ
);
$jwt = JWT::encode($payload, $key);
return $jwt;
}
}
အထက်ပါကုဒ်တွင် `createJwt` method က jwt ကိုထုတ်ပေးသည်။ အသုံးပြုသူ ID, အသုံးပြုသူအမည်နှင့်သက်တမ်းကုန်ဆုံးချိန်အပါအဝင် JWT ကိုထုတ်ပေးသည်။
အတည်ပြု jwt jwt ကို middleware တစ်ခုဖန်တီးခြင်းဖြင့်ကိုင်တွယ်နိုင်ပါတယ်။ JWT ကိုအတည်ပြုရန်နမူနာကုဒ်ဖြစ်သည်။
use Firebase\JWT\JWT;
class JwtMiddleware {
public function handle($request, Closure $next) {
$key = 'your_secret_key';
$jwt = $request->header('Authorization');
try {
JWT::decode($jwt, $key, array('HS256'));
return $next($request);
} catch (Exception $e) {
return response('Unauthorized.', 401);
}
}
}
ဤဥပမာတွင် `ကိုင်တွယ်သည့်နည်းလမ်းသည် JWT ကိုတောင်းဆိုချက်မှယူပြီး၎င်း၏တရားဝင်မှုကိုစစ်ဆေးသည်။ အကယ်. JWT သည်မှန်ကန်ပါကတောင်းဆိုမှုသည်ဆက်လက်တည်ရှိလိမ့်မည်။
အချို့သောလမ်းကြောင်းများကိုကာကွယ်ရန် JWT Verification Middleware ကို Routlection အဓိပ္ပာယ်ဖွင့်ဆိုသည့်အခါတွင်အသုံးပြုနိုင်သည်။ လမ်းကြောင်းများကိုကာကွယ်ရန်နမူနာကုဒ်ဖြစ်သည်။
use Firebase\JWT\JWT;
Route::get('/protected', function () {
return response('Protected resource.');
})->middleware('jwt');
ဤဥပမာတွင် `middleware ၏နည်းလမ်းမှာ JWT Verification Method ကို` protected` လမ်းကြောင်းကို jwt verification middleware ကိုအသုံးပြုသည်။ အတည်ပြုချက်ကိုဖြတ်သန်းသွားသောတောင်းဆိုမှုများကိုသာလမ်းကြောင်းကို 0 င်ရောက်နိုင်သည်။
JWT ကိုအသုံးပြုခြင်းအားဖြင့်သင်သည် TheyPhp မူဘောင်တွင်ထိရောက်သောစစ်မှန်ကြောင်းအတည်ပြုခြင်းနှင့်ခွင့်ပြုချက်ယန္တရားများကိုအကောင်အထည်ဖော်နိုင်သည်။ JWT ကိုအသုံးပြုခြင်းသည်လျှောက်လွှာ၏လုံခြုံရေးကိုပိုမိုကောင်းမွန်စေသည်သာမကပြောင်းလွယ်ပြင်လွယ်သည့်ပမာဏကိုလည်းပေးသည်။ ဤသင်ခန်းစာသည် JWT ကိုမည်သို့ထုတ်လုပ်ရမည်, JWT ကိုစစ်ဆေးရန်နှင့်အထိခိုက်မခံသောလမ်းကြောင်းများကိုကာကွယ်ရန် JWT ကိုသုံးပါ။ ဤဆောင်းပါးသည်သင့်အား JWT ကိုပိုမိုနားလည်ပြီးကျင့်သုံးရန်ကူညီပေးပါ။