【问题标题】:Laravel Vue SPA project insecure middlewares localstorageLaravel Vue SPA 项目不安全的中间件 localstorage
【发布时间】:2020-02-10 20:18:17
【问题描述】:

我正在尝试创建具有身份验证和角色的 SPA。 我一直在阅读很多解释如何做到这一点的教程,每个人都说同样的策略:

保存本地存储的权限,例如 accessToken 和 is_admin=0|1。 因此,当您登录时,后端响应会填充此数据。

那么vue路由只是检查这2个字段是否允许访问。

这太不安全了,任何人都可以访问以开发工具并查看这些数据并对其进行更改,只需编写一个随机的 accessToken 就可以在此站点上授予访问权限...然后 is_admin = 1 和 wala。

好的,这很难知道,但是……每个 API 调用都会在后端检查这个 accessToken。

所以我们可以做些什么来防止这种情况发生?或者如果我们想要这种“敏捷导航”,我们就不能 100% 保护路由导航中间件?

我遵循的指南之一:

https://scotch.io/tutorials/vue-authentication-and-route-handling-using-vue-router

在问题部分,很多人都在评论这个,他们的回答是这是一个前端演示......但是我怎么能依赖后端呢?如果我想要这个,每次导航点击都会刷新页面。

【问题讨论】:

    标签: laravel vue.js authentication vue-router middleware


    【解决方案1】:

    SPA 只会加载一次。之后导航由前端处理。然而,下一页所需的数据是使用 ajax 从后端加载的。这意味着您仍然可以在公开要保护的数据之前在后端验证访问权限。

    【讨论】:

    • 所以我的理解是骗子用户可以访问管理面板,但他不会检索任何数据......他只能看到静态文本/图像/等。此外,当应用程序尝试检索数据时,带有 401 错误的响应可以执行强制重定向。
    猜你喜欢
    • 2022-07-01
    • 2020-09-23
    • 2021-10-18
    • 1970-01-01
    • 2019-10-12
    • 2019-12-16
    • 2018-01-14
    • 2019-01-09
    • 2018-06-29
    相关资源
    最近更新 更多