လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> TheyPhp framework တွင် authentication နှင့်ခွင့်ပြုချက်ကိုအကောင်အထည်ဖော်ရန် JWT ကို အသုံးပြု. JWT ကို အသုံးပြု. JWT ကို အသုံးပြု. အသေးစိတ်သင်ခန်းစာ

TheyPhp framework တွင် authentication နှင့်ခွင့်ပြုချက်ကိုအကောင်အထည်ဖော်ရန် JWT ကို အသုံးပြု. JWT ကို အသုံးပြု. JWT ကို အသုံးပြု. အသေးစိတ်သင်ခန်းစာ

gitbox 2025-07-03

jwt ဆိုတာဘာလဲ

JWT (JSON Web Token) သည် authentication အတွက် Open standard ဖြစ်သည်။ 0 န်ဆောင်မှုခံယူသူနှင့်ဆာဗာအကြားလုံခြုံမှုဆိုင်ရာသတင်းအချက်အလက်များကိုဖြတ်သန်းခြင်းအားဖြင့်အသုံးပြုသူမည်သူမည်ဝါဖြစ်ကြောင်းသက်သေပြရန်ဖြစ်သည်။ JWT တွင်အစိတ်အပိုင်းသုံးပိုင်း - header, payload နှင့် signature ပါဝင်သည်။ ၎င်းတို့အနက် header သည် algorithm ကိုအမှတ်အသားပြုသည်, Payload သည်အသုံးပြုသူအချက်အလက်များကိုသိုလှောင်ထားပြီး,

jwt အသုံးပြုခြင်း၏အားသာချက်များ

1 ။ နိုင်ငံမဲ့ - jwt token သည် session အချက်အလက်များကိုသိမ်းဆည်းရန်ဆာဗာမလိုအပ်ပါ။

2 ။ လုံခြုံရေး - JWT သည်ဒေတာများကိုရှောင်ရှားရန်လက်မှတ်များ မှနေ. အချက်အလက်များ၏သမာဓိနှင့်စစ်မှန်မှုကိုသေချာစေသည်။

3 ။ စကေး - JWT ၏ဝန်သည်မည်သည့်လိုအပ်သောသတင်းအချက်အလက်ကိုမဆိုသိမ်းဆည်းထားပြီး application အမျိုးမျိုးအတွက်သင့်တော်သည်။

JWT ကို TETTPHP မူဘောင်တွင်အသုံးပြုခြင်း

JWT ကို TerryPhp မူဘောင်အတွင်းရှိ JWT ကိုအသုံးပြုရန် FORKBASE / PHPT-JWT` jwt` jwt` jwt` jwt` jwy ကို install လုပ်ဖို့လိုတယ်။ သင် composer ကို install လုပ်ရန်သုံးနိုင်သည်။ command သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span class="fun">တေးရေးဆရာက Firebase / Php-jwt လိုအပ်သည်</span>

jwt generate

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 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 နှင့်အတူ routing ကိုကာကွယ်ခြင်း

အချို့သောလမ်းကြောင်းများကိုကာကွယ်ရန် 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 ကိုပိုမိုနားလည်ပြီးကျင့်သုံးရန်ကူညီပေးပါ။