如何在用户端点上验证token_id?

时间:2018-12-26 04:57:17

标签: java spring openid-connect

我已经在oauth2之上实现了openid connect,但是现在我想停止令牌替换攻击,因为任何人如果能够解释管理员用户的响应,便可以获得管理员权限。

要解决我的问题,我需要考虑哪些要点。

谢谢。

1 个答案:

答案 0 :(得分:0)

如果很容易停止令牌替换。验证令牌。令牌用私钥签名,并用公钥验证。实施和执行非常简单。

相反,如果您要防止用户替换(交换)有效的令牌以授予增加的特权,那么请跟踪向谁颁发了令牌,并仅接受从该用户颁发给该用户的令牌。另一种方法是在创建令牌时为每个用户创建一个私钥/公钥对。然后用户将无法交换令牌,因为公钥将不同并且签名验证将失败。

令牌应具有较短的生存期(分钟)。当它们过期时,令牌将被刷新或重新授权。您确定政策和有效期。

我提到的所有内容都是Internet上的常识,其中包含几乎所有常用语言的大量示例。