Add security layer.

This commit is contained in:
2020-09-26 12:41:12 +02:00
parent 5e6da61ccb
commit fae622aafc
8 changed files with 159 additions and 1 deletions

View File

@@ -0,0 +1,21 @@
const router = require('express').Router();
const Jwt = require('../jwtService');
const userService = require('../service/userService');
const passwordService = require('../service/passwordService');
// Develop routes here
router.post('/login', (request, response) => {
const loginRequest = request.body;
// If login is incorrect, the "getUser" function will return "undefined".
// So if "user" is not "undefined", this proofs that login is correct.
const user = userService.getUser(loginRequest.login);
if (!!loginRequest && !!user && passwordService.areSamePasswords(loginRequest.password, user.password)) {
const tokenPayload = { login: loginRequest.login };
response.json(Jwt.buildToken(tokenPayload));
} else {
response.status(403).send();
}
});
module.exports = router;