আগের পর্বে আমরা যেভাবে এনক্রিপশন করেছিলাম তাতে পাসওয়ার্ড হিউমান রিডেবল অবস্থায় ছিল আমরা mongoose-encryption লাইব্রেরি ব্যবহার করে পাসওয়ার্ড কে এনক্রিপশন করতে পারি সেক্ষেত্রে model.js ছাড়া আর কোথাও কোনো কোড পরিবর্তন করতে হবে না।
npm install mongoose-encryption
আমাদের আগের কোড
// models/user.js
const mongoose = require('mongoose');
const userSchema = new mongoose.Schema({
username: { type: String, required: true },
password: { type: String, required: true },
});
const User = mongoose.model('User', userSchema);
module.exports = User;
আমাদের ডট.env ফাইলে একটি সিক্রেট কি বলে দিতে হবে
আমাদের পরের কোড
const mongoose = require('mongoose');
const encrypt = require('mongoose-encryption'); //1 step
const userSchema = new mongoose.Schema({
username: { type: String, required: true },
password: { type: String, required: true },
});
const secret = process.env.MY_SECRET; // 2 step Replace with your actual secret key
// 3 step
userSchema.plugin(encrypt, {
secret: secret,
encryptedFields: ['password'],
});
const User = mongoose.model('User', userSchema);
module.exports = User;
১,২,৩ স্টেপ এর পর তিনটি প্যারামিটার পরিবর্তন করতে হবে userSchema.plugin এ
