VueRouter 的客户端授权如何安全?
How is client-side authorization with VueRouter safe?
编辑:在单页应用中,所有静态内容都加载到 SPA 中,因此如果静态内容中有任何远程敏感内容,可以从浏览器中查看。唯一的解决方案是不使用 SPA 并从服务器端呈现授权页面,并且如果这些页面需要 modelview AJAX JS 控制器,请不要在控制器代码中公开任何敏感内容,因为它也将以静态方式提供。
我研究了 VueRouter 的代码并阅读了其他几个示例,这些示例使用保护和预检查来执行身份验证(通过 cookie 或会话数据令牌)以阻止某些路由,除非用户具有权限。
我不明白这怎么安全? VueRouter 示例屏蔽了仪表盘页面,但我可以在浏览器调试控制台中逐字查看所谓的“被屏蔽”页面,然后在源面板中编辑 JavaScript 以通过删除检查中的检查来绕过授权requireAuth 函数并替换为 'next()'.
我显然遗漏了一些东西,但如果内容和 javascript 可以在浏览器中 viwed/edited,这如何成为授权您网站部分内容的有效方法?
保护您的应用程序应该在后端完成,因为您可以完全控制那台机器。 VueRouter,正如你明确指出的,通常用于 showing/hiding UI 元素,具体取决于 authentication 和 authorization。你必须始终假设任何人都可以在他们的本地机器上阅读和修改你的前端。
明确一点,无论您使用的是 Vue、React 还是任何其他前端框架,安全性 必须 应用于后端。
编辑:在单页应用中,所有静态内容都加载到 SPA 中,因此如果静态内容中有任何远程敏感内容,可以从浏览器中查看。唯一的解决方案是不使用 SPA 并从服务器端呈现授权页面,并且如果这些页面需要 modelview AJAX JS 控制器,请不要在控制器代码中公开任何敏感内容,因为它也将以静态方式提供。
我研究了 VueRouter 的代码并阅读了其他几个示例,这些示例使用保护和预检查来执行身份验证(通过 cookie 或会话数据令牌)以阻止某些路由,除非用户具有权限。
我不明白这怎么安全? VueRouter 示例屏蔽了仪表盘页面,但我可以在浏览器调试控制台中逐字查看所谓的“被屏蔽”页面,然后在源面板中编辑 JavaScript 以通过删除检查中的检查来绕过授权requireAuth 函数并替换为 'next()'.
我显然遗漏了一些东西,但如果内容和 javascript 可以在浏览器中 viwed/edited,这如何成为授权您网站部分内容的有效方法?
保护您的应用程序应该在后端完成,因为您可以完全控制那台机器。 VueRouter,正如你明确指出的,通常用于 showing/hiding UI 元素,具体取决于 authentication 和 authorization。你必须始终假设任何人都可以在他们的本地机器上阅读和修改你的前端。
明确一点,无论您使用的是 Vue、React 还是任何其他前端框架,安全性 必须 应用于后端。