oauth – 如何在DotNetOpenAuth中验证持有者令牌

我很难找到关于如何做到这一点的DotNetOpenAuth的任何文档.

我知道客户端发送了承载令牌,但我如何验证它(除了在相应的头中验证它).如何验证它是否有效,或者是否已过期?是否有允许DotNetOpenAuth为我这样做的钩子?我没有看到它.

谢谢.

最佳答案 所以,我明白了.希望这会帮助其他人找到这个.

部分原因是我是OAuth的n00b.我设置了我的授权服务器,但没有意识到(首先)ResourceServer负责验证令牌并验证对所请求资源的访问是否仍然有效.一旦我意识到这一点,很容易在DONA中找到ResourceServer类,你可以用两行代码解析BEARER令牌:

ResourceServer server = new ResourceServer(new StandardAccessTokenAnalyzer(signingKey, encryptionKey));
AccessToken token = server.GetAccessToken();

返回的令牌将具有发布日期和发布的用户,以及您验证访问权限的任何范围请求.

希望这有助于像我这样挣扎于此的人!

点赞