【问题标题】:Security concerns regarding unique JWT token in asp.net web api c# [closed]关于asp.net web api c#中唯一JWT令牌的安全问题[关闭]
【发布时间】:2017-04-23 13:46:39
【问题描述】:
我创建了一个 asp.net MVC Web API 应用程序,它使用 JWT 令牌在正常登录后授权用户。
我能够正确实施它,但我对安全性有以下担忧:
- 如果有人复制有效用户的令牌并尝试访问 api
(我当前的实现无法识别它)。
- 如何检测是否有人从两台不同的机器登录?
- JWT 令牌生成中还需要包含哪些其他内容? (我现在在当前的实现中使用了 userid)
我需要一些指导。
提前致谢!!
【问题讨论】:
标签:
c#
asp.net
asp.net-mvc
jwt
【解决方案1】:
- 复制令牌并不容易,因为您会将其存储在浏览器的本地存储中。这将比窃取 cookie 更安全。
- 您可以再添加一项声明:Mac 地址。然后在每个请求上将请求的 Mac 地址与声明的 Mac 进行比较。
- 使用较长的随机字符串,应该足够了。我会推荐 25 个字符作为标准。不要将密钥存储在 web.config 中。您的令牌与您的密钥一样安全。