تواصل معنا
Webflow Premium Partner إيهاب فايز
العودة لأدوات AI Coding
الأمان والجودة

JWT Token Authentication

تنفيذ مصادقة بدون حالة قائمة على JWT مع توقيع الرموز والتحقق منها وتدفقات رمز التحديث.

Claude Code Cursor Copilot Windsurf Gemini CLI Codex

نظرة عامة

توفر رموز JSON Web Tokens طريقة مضغوطة وآمنة لعناوين URL لتمثيل المطالبات بين الأطراف. مكتبة jsonwebtoken هي أشهر تنفيذ لـ JWT في Node.js وتدعم خوارزميات HMAC وRSA وECDSA لتوقيع الرموز والتحقق منها. تمكّن المصادقة بدون حالة حيث لا يحتاج الخادم لتخزين بيانات الجلسة.

تتكون JWT من ثلاثة أجزاء: رأس يحدد الخوارزمية وحمولة تحتوي على المطالبات (بيانات المستخدم والانتهاء والمُصدر) وتوقيع يضمن السلامة. تدعم المكتبة المطالبات القياسية مثل exp (الانتهاء) وiss (المُصدر) وsub (الموضوع) وaud (الجمهور) بالإضافة إلى مطالبات مخصصة للبيانات الخاصة بالتطبيق مثل أدوار المستخدم أو الأذونات.

للاستخدام الإنتاجي عادة ما يتم إقران JWT مع رموز التحديث لتحقيق التوازن بين الأمان وتجربة المستخدم. رموز الوصول قصيرة العمر (15 دقيقة) تحد من نافذة الاختراق بينما تتيح رموز التحديث الأطول عمراً تجديد الرموز بسلاسة. تدعم المكتبة الخوارزميات غير المتماثلة (RS256، ES256) للسيناريوهات التي يحتاج فيها التحقق من الرمز أن يحدث دون الوصول إلى مفتاح التوقيع.

لمن هذه الأداة؟

  • بناء مصادقة API بدون حالة مع رموز الوصول
  • تنفيذ تدوير رمز التحديث لجلسات آمنة
  • إنشاء رموز موقعة لروابط التحقق من البريد الإلكتروني
  • التحقق من JWT في وسيط API مع فحص الأدوار

التثبيت

إعداد Claude Code
npm install jsonwebtoken && npm install -D @types/jsonwebtoken

الإعدادات

import jwt from "jsonwebtoken"

const SECRET = process.env.JWT_SECRET!

// Sign a token
const token = jwt.sign(
  { userId: user.id, role: user.role },
  SECRET,
  { expiresIn: "15m" }
)

// Verify a token
const payload = jwt.verify(token, SECRET)