【发布时间】:2021-08-02 12:55:15
【问题描述】:
我像这样配置了我的 OWIN 启动类:
public class Startup
{
public void Configuration(IAppBuilder app)
{
// For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=316888
app.UseActiveDirectoryFederationServicesBearerAuthentication(
new ActiveDirectoryFederationServicesBearerAuthenticationOptions
{
MetadataEndpoint = ConfigurationManager.AppSettings["ida:AdfsMetadataEndpoint"],
TokenValidationParameters = new TokenValidationParameters()
{
ValidAudience = ConfigurationManager.AppSettings["ida:Audience"],
ValidIssuer = ConfigurationManager.AppSettings["ida:Issuer"]
}
}
);
}
}
Global.asax.cs:
public class WebApiApplication : HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
}
还有我的控制器:
[RoutePrefix("v1/onboarding")]
public class OnboardingController : ApiController
{
[Route("client")]
[HttpGet]
public HttpResponseMessage CreateClient([FromUri] string CIFID)
{
return new HttpResponseMessage(HttpStatusCode.Created);
}
}
但是当我使用邮递员在没有 Bearer 令牌的情况下调用 GET /client 时,调用会继续进行,并且我会得到 201 响应状态。
如果我不提供不记名令牌,它应该会触发 403 Not Authorized 状态码,对吧?
【问题讨论】: