Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 在ASP.NET Web API核心中,如何强制401响应_Asp.net Core_Oauth 2.0_Openid Connect_Asp.net Core 3.1 - Fatal编程技术网

Asp.net core 在ASP.NET Web API核心中,如何强制401响应

Asp.net core 在ASP.NET Web API核心中,如何强制401响应,asp.net-core,oauth-2.0,openid-connect,asp.net-core-3.1,Asp.net Core,Oauth 2.0,Openid Connect,Asp.net Core 3.1,我正在ASP.NET核心Web API服务中使用OAuth2和OIDC。当我得到一个JWT令牌时,它会验证它 在我的情况下,我的发卡机构不匹配。我之所以能够看到这一点,是因为验证结果出现在JwtBearerEvents事件OnAuthenticationFailed中。在这一点上,我可以知道我需要返回401 我如何设置我的服务在该点返回401?我还没有机会在实际项目中测试这一点,但如果您只想返回401,那么您可能需要尝试以下方法: OnAuthenticationFailed = context

我正在ASP.NET核心Web API服务中使用OAuth2和OIDC。当我得到一个JWT令牌时,它会验证它

在我的情况下,我的发卡机构不匹配。我之所以能够看到这一点,是因为验证结果出现在
JwtBearerEvents
事件
OnAuthenticationFailed
中。在这一点上,我可以知道我需要返回401


我如何设置我的服务在该点返回401?

我还没有机会在实际项目中测试这一点,但如果您只想返回401,那么您可能需要尝试以下方法:

OnAuthenticationFailed = context =>
{
    context.Response.StatusCode = 401; 
    context.Response.WriteAsync("Unauthorized").Wait();
    return Task.CompletedTask;
}

您是否将IdentityServer4用于OAuth2和OIDC管理?如果你的are@IsmailUmar-很遗憾,没有。我正在使用WSO2。