عند إنشاء تطبيقات الويب، من المهم إدارة مصادقة المستخدم بشكل آمن. مكتبتان أساسيتان لهذا هما:
bcryptjs – يستخدم لتجزئة كلمات المرور ومقارنتها بشكل آمن.
رمز الويب JSON - يُستخدم للتوقيع والتحقق من رموز JWT المميزة لمصادقة المستخدم.
سنغطي كيفية تنفيذ هاتين المكتبتين في تطبيق Node.js الخاص بك لإدارة كلمات المرور بشكل آمن والمصادقة المستندة إلى الرمز المميز.
كيفية: استخدام bcryptjs وjsonwebtoken في Node.js
عند إنشاء تطبيقات الويب، من المهم إدارة مصادقة المستخدم بشكل آمن. مكتبتان أساسيتان لهذا هما:
تثبيت الحزمة
تثبيت npm bcryptjs
الآن دعني أوضح لك كيفية القيام بالسحر.
نفس القديم، نفس القديم، قم بإنشاء ملف js جديد وتذكر دائمًا طلب الحزمة.
const { hashSync, compareSync } = require("bcryptjs"); module.exports = { hashPassword: (password) => hashSync(password), comparePassword: (password, hashed) => compareSync(password, hashed };
كيفية العمل:
hashSync(كلمة المرور): تجزئة كلمة مرور المستخدم.
CompareSync(password, hashedPassword): يقارن كلمة مرور النص العادي مع الإصدار المجزأ للتحقق من صحة تسجيل دخول المستخدم.
تثبيت الحزمة:
تثبيت npm jsonwebtoken
يسمح لنا jsonwebtoken بإنشاء رمز مميز آمن (JWT) لكل مستخدم تمت مصادقته. يتم إرسال هذا الرمز المميز إلى العميل ويمكن استخدامه لمصادقة المستخدم في الطلبات اللاحقة.
const { sign, verify } = require('jsonwebtoken'); const secretkey = "yoursecretkey"; // Secret key to sign the token module.exports = { logToken: (payload) => log(payload, secretkey), // Create JWT token verifyToken: (token) => verify(token, secretkey) // Verify JWT token };
كيفية العمل:
SignToken(payload): ينشئ JWT موقعًا بالحمولة المحددة (على سبيل المثال، بيانات المستخدم) باستخدام مفتاح سري.
verifyToken(token): التحقق من صحة رمز JWT باستخدام نفس المفتاح السري.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3