如何从 OAuthAuthorizationServerProvider 的自定义实现发送 401

How to Send 401 from custom implementation of OAuthAuthorizationServerProvider

如果有人能阐明我们如何从我们的自定义实现中发送适当的 HTTP 状态代码,我将不胜感激

OAuthAuthorizationServerProvider

我正在做以下事情

context.Rejected()
context.SetError("invalid_grant", "User Name or Password are Not Correct");
return Task.FromResult<object>();

这总是发回 400 响应代码。

这是在 Microsoft.Owin.Security.OAuth dll 中实现的正常行为,例如当所有者凭据未在 OAuthAuthorizationServerProvider class 的 GrantResourceOwnerCredentials() 方法中验证时。您无法覆盖此行为。

当请求中包含的不记名令牌无效时,例如,如果已过期或票证中的声明不允许执行特定控制器,您将收到来自资源服务器的 401-Unauthorized 响应动作。