我正在使用Microsoft.Owin.Security.Oauth
在Web API上实现OAuth 2。Microsoft.Owin.Security.Oauth承载令牌授权拦截
我想保持不记名记号小,并保留私人数据。为此,我想在其中存储会话ID,然后在收到并处理会话ID后以编程方式填写ClaimsIdentity
。这也会给我更大的灵活性,涉及如何注销,角色更改和其他事情。
这应该是拦截正确事件并添加委托的问题。但是,我找不到在我的授权提供商("OAuthAuthorizationServerProvider"
的子类)上触发的事件。我认为"AuthorizeEndpoint"
会这样做,但它不会被用[Authorize]
属性修饰的API方法解雇,即使这些方法显然会检查有效的不记名令牌。当我覆盖"MatchEndpoint"
时,我发现的一个方法是用[Authorize]装饰的方法调用"IsAuthorizeEndpoint"
和"IsTokenEndpoint"
都设置为false。后者对我有意义,前者不。
我很困惑。知道这个图书馆的人可以告诉我发生了什么事情吗?我需要做些什么来完成这个看起来很简单的想法?
看起来可能类似于http://stackoverflow.com/questions/21675844/adding-extra-details-to-a-webapi-bearer-token ?? – Macilquham