Auth is now working with keys
This commit is contained in:
parent
258474edb7
commit
34070afc0e
2 changed files with 24 additions and 31 deletions
|
|
@ -1,30 +1,21 @@
|
||||||
const sessionJwt = require ('./sessionJWT');
|
const sessionJwt = require ('./sessionJWT');
|
||||||
const queries = require('./mongodbQueries');
|
const queries = require('./mongodbQueries');
|
||||||
|
|
||||||
// ici, on récupère le contenu du cookie de session JWT.
|
function getSession (sessionid,res) {
|
||||||
// celui-ci contient le userId mais également des informations
|
return sessionJwt.decodeSessionCookie(sessionid,res);
|
||||||
// concernant sa date d'expiration.
|
|
||||||
function getSession (req) {
|
|
||||||
return sessionJwt.decodeSessionCookie(req);
|
|
||||||
}
|
}
|
||||||
module.exports.getSession = getSession;
|
module.exports.getSession = getSession;
|
||||||
|
|
||||||
// cette fonction ajoute le cookie de session au headers du
|
|
||||||
// message qui sera renvoyé à Angular. Si le cookie actuel
|
|
||||||
// est "vieux", on en recrée ici un nouveau.
|
|
||||||
function setSessionCookie (req, res, session) {
|
function setSessionCookie (req, res, session) {
|
||||||
sessionJwt.createSessionCookie(req, res, session);
|
sessionJwt.createSessionCookie(req, res, session);
|
||||||
}
|
}
|
||||||
module.exports.setSessionCookie = setSessionCookie;
|
module.exports.setSessionCookie = setSessionCookie;
|
||||||
|
|
||||||
// fonction pour récupérer le userId provenant du cookie
|
function getUsername(session) {
|
||||||
// de session. Si ce dernier n'existe pas, on renvoie
|
|
||||||
// l'ID -1.
|
|
||||||
function getUserId(session) {
|
|
||||||
if (typeof session.username === 'undefined') return -1;
|
if (typeof session.username === 'undefined') return -1;
|
||||||
return session.username;
|
return session.username;
|
||||||
}
|
}
|
||||||
module.exports.getUserId = getUserId;
|
module.exports.getUserId = getUsername;
|
||||||
|
|
||||||
async function authenticate(req, res) {
|
async function authenticate(req, res) {
|
||||||
const login = req.body.login;
|
const login = req.body.login;
|
||||||
|
|
|
||||||
|
|
@ -1,26 +1,28 @@
|
||||||
const sessionJwt = require ('./sessionJWT');
|
const request = require('request');
|
||||||
|
|
||||||
// ici, on récupère le contenu du cookie de session JWT.
|
function getSession (req, callback) {
|
||||||
// celui-ci contient le userId mais également des informations
|
if(typeof req.headers.cookie !== 'undefined'){
|
||||||
// concernant sa date d'expiration.
|
request.post({
|
||||||
function getSession (req) {
|
headers: {'content-type' : 'application/x-www-form-urlencoded'},
|
||||||
return sessionJwt.decodeSessionCookie(req);
|
url: 'http://127.0.0.1:3000/verify:token',
|
||||||
|
body: 'sessionid='+req.headers.cookie.replace('SESSIONID=','')
|
||||||
|
},function (error, response, body) {
|
||||||
|
const bodyJson = JSON.parse(body);
|
||||||
|
if (bodyJson && bodyJson.status && bodyJson.data) {
|
||||||
|
if (bodyJson.status === 'ok') {
|
||||||
|
return callback(bodyJson.data.token);
|
||||||
|
} else {
|
||||||
|
return callback(bodyJson.data.reason);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return callback(undefined);
|
||||||
}
|
}
|
||||||
module.exports.getSession = getSession;
|
module.exports.getSession = getSession;
|
||||||
|
|
||||||
// cette fonction ajoute le cookie de session au headers du
|
|
||||||
// message qui sera renvoyé à Angular. Si le cookie actuel
|
|
||||||
// est "vieux", on en recrée ici un nouveau.
|
|
||||||
function setSessionCookie (req, res, session) {
|
|
||||||
sessionJwt.createSessionCookie(req, res, session);
|
|
||||||
}
|
|
||||||
module.exports.setSessionCookie = setSessionCookie;
|
|
||||||
|
|
||||||
// fonction pour récupérer le userId provenant du cookie
|
|
||||||
// de session. Si ce dernier n'existe pas, on renvoie
|
|
||||||
// l'ID -1.
|
|
||||||
function getUsername(session) {
|
function getUsername(session) {
|
||||||
if (typeof session.username === 'undefined') return -1;
|
if (typeof session === 'undefined' || typeof session.username === 'undefined') return -1;
|
||||||
return session.username;
|
return session.username;
|
||||||
}
|
}
|
||||||
module.exports.getUsername = getUsername;
|
module.exports.getUsername = getUsername;
|
||||||
|
|
|
||||||
Reference in a new issue