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

Passport.js Strategies

ضبط Passport.js كوسيط مصادقة مع أكثر من 500 استراتيجية لتطبيقات Express وNode.js.

Claude Code Cursor Copilot

نظرة عامة

Passport.js هو أكثر وسيط مصادقة استخداماً لـ Node.js مع أكثر من 500 استراتيجية مصادقة متاحة كحزم منفصلة. يتبع بنية وحدات حيث يتم تنفيذ كل طريقة مصادقة (محلية، OAuth، SAML، إلخ) كإضافة استراتيجية مما يحافظ على خفة المكتبة الأساسية ومرونتها.

تتكامل المكتبة بسلاسة مع Express.js وتوفر واجهة برمجة تطبيقات متسقة لمصادقة الطلبات. تتعامل الاستراتيجيات مع تفاصيل كل طريقة مصادقة بينما يدير Passport تسلسل الجلسات وتعزيز الطلبات والتحكم في تدفق المصادقة. تشمل الاستراتيجيات الشائعة passport-local لاسم المستخدم/كلمة المرور وpassport-google-oauth20 لـ Google وpassport-jwt للمصادقة القائمة على الرموز.

يدعم Passport كلاً من المصادقة القائمة على الجلسات والمصادقة بدون حالة. للمصادقة القائمة على الجلسات يوفر خطافات serialize/deserialize التي تتحكم في كيفية تخزين بيانات المستخدم واسترجاعها من الجلسات. لمصادقة API تمكن استراتيجيات JWT وBearer token من التحقق من الطلبات بدون حالة دون تخزين جلسات من جانب الخادم.

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

  • إضافة مصادقة محلية باسم المستخدم وكلمة المرور لتطبيق Express
  • تنفيذ تسجيل دخول Google OAuth2 مع Passport
  • إعداد مصادقة API قائمة على JWT
  • الجمع بين استراتيجيات مصادقة متعددة في تطبيق واحد

التثبيت

إعداد Claude Code
npm install passport passport-local express-session

الإعدادات

// config/passport.ts
import passport from "passport"
import { Strategy as LocalStrategy } from "passport-local"

passport.use(new LocalStrategy(
  async (username, password, done) => {
    const user = await User.findOne({ username })
    if (!user || !await user.verifyPassword(password)) {
      return done(null, false, { message: "Invalid credentials" })
    }
    return done(null, user)
  }
))