Pengesahan dan kebenaran adalah elemen penting dalam memastikan keselamatan aplikasi web. Dalam Express.js persekitaran, anda boleh melaksanakan pengesahan pengguna dan kebenaran akses dengan berkesan untuk mendapatkan sumber. Berikut ialah panduan tentang cara untuk mencapai ini:
Pengesahan Pengguna
Gunakan Pengesahan Middleware: Buat pengesahan middleware untuk menyemak sama ada pengguna telah log masuk.
function isAuthenticated(req, res, next) {
if(req.isAuthenticated()) {
return next();
}
res.redirect('/login');
}
app.get('/profile', isAuthenticated,(req, res) => {
// Access profile page when logged in
});
Keizinan Akses kepada Sumber Selamat
Gunakan Kebenaran Middleware: Buat middleware untuk menyemak kebenaran akses pengguna untuk mendapatkan sumber.
function hasPermission(req, res, next) {
if(req.user.role === 'admin') {
return next();
}
res.status(403).send('Access denied');
}
app.get('/admin', isAuthenticated, hasPermission,(req, res) => {
// Access admin page with proper permission
});
Menggunakan Perpustakaan Pengesahan dan Kebenaran
Gunakan Passport.js: Gunakan Passport.js perpustakaan untuk memudahkan pengesahan dan kebenaran.
const passport = require('passport');
app.use(passport.initialize());
app.post('/login', passport.authenticate('local', {
successRedirect: '/profile',
failureRedirect: '/login'
}));
app.get('/admin', isAuthenticated, hasPermission,(req, res) => {
// Access admin page with proper permission
});
Kesimpulan
Pengesahan dan kebenaran memainkan peranan penting dalam melindungi aplikasi web daripada ancaman keselamatan. Dengan menggunakan middleware, perpustakaan seperti Passport.js, dan semakan kebenaran, anda boleh memastikan bahawa pengguna hanya boleh mengakses sumber yang sesuai dan selamat.