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

时间:2016-06-14 20:23:06

标签: oauth-2.0 owin jwt

如果有人能够了解我们如何从我们的自定义实施中发送适当的HTTP状态代码,我将非常感激

OAuthAuthorizationServerProvider

我正在做以下

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

这总是会发回400响应代码。

1 个答案:

答案 0 :(得分:1)

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

当请求中包含的承载令牌无效时,您将从资源服务器获得401-Unauthorized响应,例如,如果已过期或者票证内的声明不允许执行特定控制器动作。