首页 > 解决方案 > OAuth 资源服务器,验证令牌并返回端点授权范围

问题描述

我正在尝试在包装的自定义中间件令牌验证器中使用 Microsoft.Owin.Security.OAuth 库。该中间件将加载到服务器上,该服务器将接收承载令牌,然后将其传递到资源服务器的自省端点,并返回范围,然后将用于授权某些 webapi 调用。

这个验证器只是通过调用自省端点来验证令牌。我想我可以通过包装 OAuthAuthorizationServer 中间件来解决问题,我自己只需要来自消费者的自省端点所需的信息。

我读过很多文章,我必须承认我感到有些失落。我试图简单地创建一个自定义中间件,它将令牌从授权标头中提取出来,验证它是一个不记名令牌,调用自省端点,检索范围并构建一个 ClaimsIdentity。我的问题是我无法弄清楚我错过了什么会与 ASP.Net 中的授权功能挂钩。

我尝试自定义一些 OAuthAuthorizationServer 和 OAuthBearerAuthentication 中间件,并提供与我的自定义中间件类似的提供程序,但无济于事。看来,最终我总是无法调用 Authorize 装饰端点。

如有必要,我可以提供代码,但我觉得我缺少的只是方向。我已经阅读了许多涉及 OAuthAuthorizationServer 的文章,尤其是关于将授权服务器与资源服务器解耦的 BoT 文章,但我似乎遗漏了一些东西。

任何帮助或指导将不胜感激,谢谢!

标签: c#.netoauth-2.0

解决方案


推荐阅读