Laravel API Auth with Sanctum — বাংলা টিউটোরিয়াল | Part 28

Abu Sayed
2 min readFeb 25, 2024

--

Laravel Sanctum দিয়ে API Authentication ইমপ্লিমেন্টেশন নিয়ে বাংলায় লেখা টিউটোরিয়াল। Sanctum এর বৈশিষ্ট্য এবং কাজের পদ্ধতি সম্পর্কে ধারণা দেয়। উদাহরণসহ বিস্তারিতভাবে ব্যাখ্যা করে কিভাবে Laravel API-তে Authentication যুক্ত করা যায়।

Laravel Sanctum হল একটি স্বল্প, সহজ এবং নিরাপদ API অথেন্টিকেশন সিস্টেম। এটি SPA(Single Page Application), Mobile App এবং অন্যান্য স্টেটলেস API এর জন্য অনেক উপযুক্ত। Sanctum ব্যবহার করে আমরা দ্রুততম সময়ে Laravel API এ Authentication যুক্ত করতে পারি।

Laravel Sanctum এর কিছু বৈশিষ্ট্য:

  • টোকেন বেসড অথেন্টিকেশন
  • মবাইল অ্যাপ্লিকেশনের জন্য পরিকল্পিত
  • সহজ এবং দ্রুত ইন্সটলেশন
  • কনফিগারেবল টোকেন স্কোপ এবং এক্সপায়ারি
  • API Token Authentication
  • Built-in Rate Limiting

মোট কথা, Laravel Sanctum দিয়ে API Authentication খুব দ্রুতভাবে ইমপ্লিমেন্ট করা যায় যা আমাদের API security বৃদ্ধিতে সাহায্য করে।

Laravel Sanctum ব্যবহারের উদাহরণ

Laravel অ্যাপ্লিকেশনে Sanctum ইনস্টল করার পর আমরা RegisterAPI এবং LoginAPI কন্ট্রোলার তৈরি করতে পারি যা ব্যবহারকারীদের রেজিস্টার এবং লগইনের জন্য টোকেন প্রদান করবে।

// RegisterAPI Controller
public function register(Request $request) {
$user = User::create($request->all());
return $user->createToken('token-name')->plainTextToken;
}
// LoginAPI Controller  
public function login(Request $request) {
if(!\Auth::attempt($request->only(['email', 'password']))){
return response([
'message' => 'Invalid login details'
], 401);
}
$user = User::where('email', $request['email'])->firstOrFail(); return $user->createToken('token-name')->plainTextToken;
}

এরপর অন্য রাউট এবং কন্ট্রোলারে auth:sanctum মিডলওয়্যার ব্যবহার করে অথেন্টিকেটেড রাউট প্রোটেক্ট করা যায়।

Route::get('/profile', function(){
// Only authenticated users can enter here
})->middleware('auth:sanctum');

এভাবে মিনিমাল কনফিগারেশনে Laravel Sanctum দিয়ে আমরা দ্রুততম সময়ে API Authentication তৈরি করতে পারি।

সংক্ষিপ্তসার:

  • Laravel Sanctum হল একটি সহজ এবং নিরাপদ API অথেন্টিকেশন সিস্টেম
  • এটি SPA এবং মোবাইল অ্যাপ্লিকেশনের জন্য খুবই উপযুক্ত
  • টোকেন বেসড অথেন্টিকেশন প্রদান করে
  • খুব দ্রুতভাবে ইমপ্লিমেন্ট করা যায়
  • API Security বৃদ্ধিতে সাহায্য করে

সমগ্রভাবে, Laravel Sanctum দিয়ে দ্রুততম সময়ে নিরাপদ API Authentication তৈরি করা যায় যা আমাদের API-কে আরও নিরাপদ করে।

--

--

Abu Sayed

Bangladeshi Full Stack Web Dev, Sys Admin & DevOps Engineer. Skills: Data analysis, SQL, Kubernetes. Python, PHP & Laravel. Me on: bd.linkedin.com/in/imabusayed