加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular可以激活安全性

发布时间:2020-12-17 10:24:47 所属栏目:安全 来源:网络整理
导读:最近,我一直在考虑我正在开发的应用程序的安全性.客户端是在Angular上构建的,带有Rails API后端.从我可以收集的信息来看,普遍的共识是,如果它在客户端,则认为它可能会受到损害.所以这让我想知道何时以及我是否应该使用canActivate这样的路由,或者我应该每次
最近,我一直在考虑我正在开发的应用程序的安全性.客户端是在Angular上构建的,带有Rails API后端.从我可以收集的信息来看,普遍的共识是,如果它在客户端,则认为它可能会受到损害.所以这让我想知道何时以及我是否应该使用canActivate这样的路由,或者我应该每次在服务器上检查授权以获取路由请求.我想过将auth请求放到canActivate中的服务器上,但是我认为canActivate可以被黑客攻击回复,绕过了服务器响应的需要?如果是这样的话,如果它只是一扇玻璃门,那么canActivate有什么意义呢?
TL; DR:canActivate防护不用于安全性,而是用户体验.应始终通过需要身份验证的API来保护数据.

假设您的应用程序具有始终可访问的登录路由以及显示登录用户的秘密内容的机密表:

>登录
>使用AuthGuard的SecretsTable

AuthGuard会检查用户是否已登录,如果未经过身份验证,则会重定向到登录.如你所说,就像客户端的任何东西一样,这可能会受到影响.这就是为什么SecretsTable的秘密数据应该来自受保护的API调用.即使数据是静态的(对于任何用户也是如此),您不仅可以将其包含在客户端应用程序中,还可以使用此API调用来保护它.

那么我们需要AuthGuard呢?它不是为了安全而是为了用户体验.想象一下,用户通过聊天信使接收到URL myapp.io/secrets-table.如果我们没有AuthGuard,则用户可能会收到错误消息(401)或查看空表视图.我们的数据受到保护,但仍然是糟糕的用户体验.更好:AuthGuard立即重定向到登录,甚至可以在成功验证后将用户带回秘密表.此外,我们不必为每个视图实现此逻辑,但可以将我们的AuthGuard重用于多个受保护的路由.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读