如何防止客户端在.net中使用其他jwt令牌?

时间:2016-07-25 06:51:58

标签: authentication asp.net-web-api oauth jwt

我正在阅读有关jwt的内容。几天后我就明白了这个概念。 现在我的问题是关于为每个用户创建jwt令牌,以便其他人使用 其他令牌。

例如情景: user登录到服务器并获取其jwt令牌和服务器允许它访问 资源。

现在第三方进来并获得用户A的jwt令牌。现在第三方可以使用此令牌并使用此令牌来使用资源而无需登录系统。

如何为uniqe用户创建空间jwt令牌?

1 个答案:

答案 0 :(得分:1)

JWT包含在' sub'字段用户标识符。它可能只用于识别此用户

一旦签发,令牌将替换用户的凭据,因此您可以使用来防止令牌被盗并减轻其影响

  • 主要使用HTTPS来避免Man-In-The-Middle
  • 设置较短的到期时间并旋转令牌
  • 注销后在客户端删除令牌
  • 使用Cookie存储和设置HttpOnly以降低客户端脚本访问受保护cookie的风险
  • 维护未接受令牌的服务器黑名单。例如,当用户注销时,更改密码或更新权限,以及管理员撤销帐户时。
  • 使用Cookie存储和设置HttpOnly以降低客户端脚本访问受保护cookie的风险