2017-04-03 102 views
1

我在本地存储中存储来自google oauth2的访问令牌。现在,问题是,这是一个安全问题。另一个人可以从我的浏览器复制本地存储值并输入网址来访问我的帐户。我们如何解决这个问题,因为访问令牌通常只存储在本地或会话存储中。我们可以给注销后说60分钟,这样的:Oauth2访问令牌安全问题+ angular 2

this.expiresTimerId = setTimeout(() => { 
      console.log('Session has expired'); 
      this.doLogout(440); 
     }, 3600); 

但是,存在60分钟,这可能导致安全漏洞的漏洞。如何避免这种情况?

回答

0

我不知道任何简单的方法来保护访问令牌,以防“别人来我的电脑并误用我的开放会话”攻击(访问令牌用于绑定到客户端IP地址)。

您可以通过使用sessionStorage而不是localStorage来改善情况 - 当浏览器选项卡关闭时,它会删除其值。

为了防止攻击者造成任何伤害,所有执行数据更改或显示敏感数据的操作都必须以与在线银行系统用来执行操作类似的方式重新进行身份验证。