将Oauth令牌与先前保存的令牌进行比较

时间:2016-11-07 00:39:16

标签: c# asp.net-web-api oauth-2.0

我正在开展一个项目,目前我正在努力增加额外的安全级别。我们的想法是,当生成Oauth令牌时,我们会将其与我们数据库中保存的令牌进行比较,如果它们不匹配则拒绝用户。我的问题是我在验证流程期间尝试进行比较,然后才将令牌从/ token端点发送给最终用户,但是我无法在此期间找到访问生成的令牌的位置。身份验证请求我只在最终授予请求时才看到它。只需要一个指南,其中" access_token"财产藏匿在。

1 个答案:

答案 0 :(得分:0)

如果不知道您使用的是哪个库,我无法完全回答。如果它是IdentityServer3我不知道如何做到这一点,但你不应该因为几个原因而不得不这样做。

  • 在用户通过身份验证之前,不应颁发令牌。也许我错过了一些东西,但是当你需要拒绝用户的时候我想不出这种情况。
  • 每个令牌都应该是唯一的,因此您不应期望生成已存在的令牌。

我还要注意,如果您使用自包含令牌,则无需持久化它们,因为只能使用证书的公钥来验证它们。

如果你能通过额外的安全性澄清你的意思,我可能会想出一些更有用的东西,但希望无论如何这都是有用的。