如何检查用户是否通过Vue路由进行了身份验证?

问题描述 投票:0回答:1

我正在使用Vue前端,Express和Parse(解析平台)作为后端来创建单页应用程序。每当我对用户进行身份验证时,我都会将用户的信息放入会话变量req.session.user = result;中,然后将其发送回客户端res.status(200).send(req.session);。每当用户通过应用程序进行路由时,如何安全地检查身份验证是否有效?我担心的是,放入客户Cookie中的session id可能是伪造的,并且用户将被视为已认证。我相信我可以向后端发送请求,以确保每次用户输入路由时身份验证是否有效,但是我认为这不是一个好主意,因为vue应用程序中的路由非常快速,并且如果成百上千的用户快速导航可能会导致一个问题。我还能做什么?还是我正在按照正确的方式来做/思考?

我使用express-session将客户的会话存储到他的cookie中。

app.use(session({
secret: 'secret_key',
resave: false,
saveUninitialized: true,
cookie: {} }));

这是我登录用户的方式:

 Parse.User.logIn(username, password).then(result => {
     req.session.user = result;
     res.status(200).send(req.session);
 });
express vue.js authentication parse-platform express-session
1个回答
0
投票

我建议您寻找jwt authentication。本文可以为您提供帮助:https://medium.com/better-programming/authentication-and-authorization-using-jwt-with-node-js-4099b2e6ca1f

© www.soinside.com 2019 - 2024. All rights reserved.