JWT Auth错误的用户提供了令牌

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

我用不同的电子邮件地址和密码创建了2个帐户。我有一个HTTP请求发送令牌(登录后存储在本地存储中),如下所示:

http://apiurl/api/projects/getProjects?token=tokenString

在方法内部,我使用以下行根据令牌检索经过身份验证的用户:

$authenticatedUser = JWTAuth::parseToken()->authenticate();

这将检索我创建的第一个帐户的电子邮件地址,即使我在第二个帐户登录也是如此。对于每个帐户,请求中的令牌不同,但authenticatedUser每次都用于同一帐户。

这只发生在一个特定帐户中,它认为我以其他用户身份登录。如果我从数据库中删除所有用户并创建一些新帐户,那么其中一个会遇到同样的问题。

angularjs laravel jwt jwt-auth
1个回答
0
投票

一个说明。我认为出于安全原因,您不应该在url查询参数中发送令牌。请参阅here

我建议将其发送到cookie中。在express.js中,像这样。

res.cookie("auth", token);
return res.redirect(`http://localhost:3000/socialauthredirect`);
© www.soinside.com 2019 - 2024. All rights reserved.