针对同一应用程序中的WebAPI的MVC和OAuth的Cookie身份验证

我有一个asp.net应用程序 . 有MVC控制器和WebAPI控制器 . 对于cookie身份验证,我使用 app.UseCookieAuthentication(... 中间件和 DefaultAuthenticationTypes.ApplicationCookie 身份验证类型,对于oauth我使用 app.UseOAuthBearerTokens(... 中间件 . 对于MVC部分,我将 AuthorizeAttribute 添加为全局以防止匿名访问 . 有趣的是,我可以从MVC控制器获取数据,也可以通过oauth获取访问令牌 . 我知道oauth中间件在处理请求时使用令牌设置当前用户 . 现在我为MVC部件添加了额外的属性来拒绝具有身份验证类型的用户!= DefaultAuthenticationTypes.ApplicationCookie . 因此,使用令牌的请求仅适用于WebAPI . 这是一个好方法还是我做错了什么?

回答(0)