پرش به مطلب اصلی

میان‌افزار احراز هویت (Authentication)

میان افزار احراز هویت مسئول مدیریت احراز هویت کاربران در فریمورک کیمیا است.

هدف

این میان افزار درخواست‌های ورودی را بررسی کرده و کاربر را احراز هویت می‌کند. از روش‌های مختلفی مانند توکن‌های دسترسی، نشست‌ها و کوکی‌ها برای احراز هویت استفاده می‌کند.

نحوه کار

  1. بررسی هدر access-token برای توکن‌های دسترسی
  2. بررسی هدر authentication برای نشست‌ها
  3. بررسی وجود کاربر احراز هویت شده در بدنه درخواست

توکن‌های دسترسی

توکن‌های کلاسیک (Classic Tokens)

توکن‌های دسترسی کلاسیک از یک نام و یک hash تشکیل شده‌اند:

Authorization: <name> <hash>

توکن‌های نشست (Session Tokens)

توکن‌های نشست در هدر authentication ارسال می‌شوند و به کاربران متصل می‌شوند.

تنظیمات

// در فایل تنظیمات برنامه
AUTHENTICATION: {
headerName: "authentication", // نام هدر برای توکن نشست
accessTokenHeaderName: "authorization", // نام هدر برای توکن دسترسی
}

خطاها

  • 401 Unauthorized: کاربر احراز هویت نشده
  • 401 Token not valid: توکن نامعتبر یا منقضی شده

مثال استفاده

// ارسال توکن دسترسی
headers: {
"authorization": "mytoken abc123..."
}

// ارسال توکن نشست
headers: {
"authentication": "session_token_here"
}