Compétences auth-implementation-patterns
🔐

auth-implementation-patterns

Sûr

تطبيق أنظمة مصادقة آمنة

Également disponible depuis: wshobson

تعلم أنماط المصادقة والتفويض المجربة في المعارك لبناء تحكم آمن في الوصول في تطبيقاتك دون إعادة اختراع العجلة.

Prend en charge: Claude Codex Code(CC)
🥉 75 Bronze
1

Télécharger le ZIP du skill

2

Importer dans Claude

Allez dans Paramètres → Capacités → Skills → Importer un skill

3

Activez et commencez à utiliser

Tester

Utilisation de "auth-implementation-patterns". كيف أطبق مصادقة JWT في Express؟

Résultat attendu:

يتضمن تطبيق JWT الكامل: 1) إنشاء الرموز باستخدام jwt.sign() مع أسرار من متغيرات البيئة، 2) إنشاء وسيط authenticate يتحقق من رموز Bearer، 3) استخدام رموز وصول قصيرة الأجل (15 دقيقة) مع رموز تحديث أطول (7 أيام)، 4) تخزين رموز التحديث مجزأة في قاعدة البيانات. راجع Pattern 1 في implementation-playbook.md للحصول على الكود الكامل.

Utilisation de "auth-implementation-patterns". ما الفرق بين المصادقة القائمة على الجلسات والقائمة على الرموز؟

Résultat attendu:

القائمة على الجلسات: الخادم يخزن الحالة، معرّف الجلسة في ملف تعريف الارتباط، بسيطة ولكنها تتطلب جلسات لازبة. القائمة على الرموز (JWT): بدون حالة، ادعاءات ذاتيةContained، قابلة للتوسع أفقيًا، ولكن لا يمكن إلغاء الرموز الفردية بسهولة. اختر الجلسات للتطبيقات التقليدية، و JWT للـ APIs والخدمات الدقيقة.

Utilisation de "auth-implementation-patterns". كيف أطبق تفويضًا قائمًا على الأدوار؟

Résultat attendu:

حدد الأدوار في enum (USER, MODERATOR, ADMIN)، أنشئ تعيين تسلسل هرمي للأدوار، ابنِ وسيط requireRole() يتحقق من دور المستخدم مقابل الأدوار المسموح بها، طبق الوسيط على المسارات المحمية. مثال: app.delete('/users/:id', authenticate, requireRole('ADMIN'), handler)

Audit de sécurité

Sûr
v1 • 2/24/2026

Educational documentation skill containing authentication and authorization code patterns. All 67 static findings are false positives: backticks are markdown code fences, environment variable access demonstrates proper secret handling, and weak crypto mentions are in cautionary context. No actual security risks present.

2
Fichiers analysés
661
Lignes analysées
0
résultats
1
Total des audits
Aucun problème de sécurité trouvé
Audité par: claude

Score de qualité

38
Architecture
100
Maintenabilité
87
Contenu
50
Communauté
100
Sécurité
100
Conformité aux spécifications

Ce que vous pouvez construire

بناء مصادقة JWT من الصفر

تطبيق كامل للمصادقة القائمة على الرموز مع رموز الوصول ورموز التحديث والإدارة السليمة للأسرار

إضافة تسجيل دخول اجتماعي OAuth2

دمج مصادقة OAuth2 الاجتماعية من Google و GitHub في التطبيقات الموجودة

تصميم نموذج التفويض

إنشاء أنظمة تحكم في الوصول القائمة على RBAC أو الأذونات لموارد التطبيق

Essayez ces prompts

إعداد JWT الأساسي
أظهر لي كيفية تطبيق مصادقة JWT في Node.js مع Express، بما في ذلك إنشاء الرموز ووسيط التحقق
تدفق رمز التحديث
أنشئ تدفق رمز تحديث يخزن رموز التحديث بشكل آمن في قاعدة بيانات ويصدر رموز وصول جديدة
دمج OAuth2
طبق تسجيل دخول Google OAuth2 باستخدام Passport.js مع إنشاء رمز JWT بعد المصادقة
تفويض RBAC
صمم نظام تحكم في الوصول القائم على الأدوار مع أدوار المشرف والمشرف والمستخدم، بما في ذلك الوسيط للتحقق من الأذونات

Bonnes pratiques

  • استخدم دائمًا متغيرات البيئة للأسرار (JWT_SECRET, SESSION_SECRET) ولا تقم بتضمين بيانات الاعتماد مباشرة في الكود
  • استخدم رموز وصول قصيرة الأجل (15-30 دقيقة) مع رموز تحديث منفصلة لأمان أفضل
  • خزن رموز التحديث مجزأة في قاعدة البيانات وطبق دوران الرمز عند الاستخدام

Éviter

  • تخزين JWT في localStorage يعرض الرموز لهجمات XSS - استخدم ملفات تعريف الارتباط httpOnly بدلاً من ذلك
  • عدم التحقق من انتهاء صلاحية الرمز يسمح باستخدام الرموز منتهية الصلاحية إلى أجل غير مسمى
  • يمكن تجاوز فحوصات التفويض من جانب العميل فقط - تحقق دائمًا من جانب الخادم

Foire aux questions

متى يجب استخدام المصادقة القائمة على الجلسات مقابل القائمة على الرموز؟
استخدم الجلسات للتطبيقات التقليدية المقدمة من الخادم حيث تحتاج إلى تسجيل خروج بسيط وحماية CSRF. استخدم الرموز (JWT) لتطبيقات الصفحة الواحدة والتطبيقات المحمولة والخدمات الدقيقة حيث تحتاج إلى مصادقة بدون حالة وطلبات عبر المجالات.
كيف أخزن أسرار JWT بشكل آمن؟
لا تقم أبدًا بتضمين الأسرار في كود المصدر. استخدم متغيرات البيئة (process.env.JWT_SECRET) وقم بتحميلها من ملفات .env في وقت التشغيل. تأكد من أن .env موجود في .gitignore ويتم حقن الأسرار من مصادر آمنة في الإنتاج.
ما الفرق بين المصادقة والتفويض؟
المصادقة (AuthN) تتحقق من هوية المستخدم (تسجيل الدخول بالبيانات). التفويض (AuthZ) يحدد ما يمكن للمستخدم فعله (الأذونات والأدوار). كلاهما ضروري ولكن يخدم أغراضًا مختلفة في التحكم في الوصول.
كيف أطبق رموز التحديث بشكل آمن؟
أنشئ رموز التحديث كـ UUIDs عشوائية، خزن النسخ المجزأة في قاعدة البيانات، حدد انتهاء الصلاحية (7-30 يومًا)، طبق الدوران (إصدار رمز تحديث جديد عند كل استخدام)، واسمح بالإلغاء لتسجيل الخروج أو أحداث الأمان.
هل يمكن إلغاء رموز JWT؟
JWTs بدون حالة بالتصميم. للإلغاء: استخدم قائمة حظر رموز في Redis/قاعدة البيانات، طبق انتهاء صلاحية قصير حتى تنتهي الرموز بشكل طبيعي، أو استخدم دوران رمز التحديث لإبطال أزواج الرموز القديمة.
ما أفضل طريقة للتعامل مع تخزين كلمات المرور؟
قم دائمًا بتجزئة كلمات المرور باستخدام bcrypt أو argon2 مع عوامل عمل عالية (bcrypt cost 10-12). لا تخزن كلمات المرور أبدًا بنص عادي. استخدم salt المقدم تلقائيًا بواسطة bcrypt. تحقق باستخدام bcrypt.compare().

Détails du développeur

Structure de fichiers