Asp.net 为MVC 5/Web API应用程序组合令牌和cookie身份验证

Asp.net 为MVC 5/Web API应用程序组合令牌和cookie身份验证,asp.net,asp.net-mvc,authentication,web,asp.net-web-api,Asp.net,Asp.net Mvc,Authentication,Web,Asp.net Web Api,我有一个web应用程序,其中包含: 普通MVC控制器-只能使用cookie身份验证 应用程序内部使用的Web API控制器(jquery调用等)也应该使用cookie auth 外部使用的Web API控制器(如电话应用程序)-必须使用令牌身份验证 现在,我已经设置了(标识)身份验证,以便它具有: app.UseCookieAuthentication(…)为web应用设置cookie身份验证;和 app.useAuthBearerTokens和app.useAuthBeareAuthent

我有一个web应用程序,其中包含:

  • 普通MVC控制器-只能使用cookie身份验证
  • 应用程序内部使用的Web API控制器(jquery调用等)也应该使用cookie auth
  • 外部使用的Web API控制器(如电话应用程序)-必须使用令牌身份验证
现在,我已经设置了(标识)身份验证,以便它具有:

app.UseCookieAuthentication(…)
为web应用设置cookie身份验证;和
app.useAuthBearerTokens
app.useAuthBeareAuthentication
设置基于令牌的内容

是否可以确保MVC端不支持令牌,而WebAPI端支持令牌?由于一些web API是内部的,一些是外部的,所以如果API端点支持cookie或令牌,我想我会很高兴


谢谢。

除非您有两个不同的端点可以在
Startup.cs
级别区分,否则您需要创建一个自定义ActionFilter来处理此场景

我有类似的设置/问题。你找到解决办法了吗?这里也一样。。。你找到解决办法了吗?是的。。。您可以阻止api使用cookies,尽管我现在记不起确切的方法调用。类似于告诉api禁止默认身份验证..啊-检查这个