服务器独有的OAuthAuthorizationServerProvider / AuthenticationTokenProvider票证?

时间:2015-01-23 14:53:10

标签: asp.net-web-api oauth oauth-2.0 asp.net-web-api2

我们有一个.Net Web API(v2)服务于SPA,我的目标是使用OAuth 2保护。

在我的OWIN Startup.Configuration()中,我将IAppBuilder.UseOAuthAuthorizationServer中的Provider设置为覆盖OAuthAuthorizationServerProvider。我已成功提供刷新令牌。

我想确保这些令牌不会被实施类似提供商的人欺骗。我做过的任何搜索都没有给我任何答案。

OAuthAuthorizationServerProvider是否确保收到的刷新令牌是由自己发布的令牌,而不是黑客机器上的任何类似代码?

我自己的实验似乎证实确实如此 - 我尝试在两台不同的机器上运行相同的代码并从另一台机器上取出未过期的刷新令牌(24小时的长期到期时间),并获得401作为我&# 39;希望。但是,如果我错误地说服了自己,我希望得到一些人的保证和/或建议,他们在.Net Web API中比我更了解OAuth。

谢谢,

1 个答案:

答案 0 :(得分:3)

我确信我最终在OAuthAuthorizationServerProvider的文档中找到了明确的答案,但现在无法找到它。

但是,Dominick Baier是该领域的专家,他说:

  

使用机器密钥保护访问令牌。保护刷新令牌取决于您。您需要在web.config中手动设置machineKey元素(否则密钥会自动生成并可能随时间而变化)。

他的评论来自对post on implementing OAuthAuthorizationServerProvider的回复。