使用表单发布验证OAuth承载令牌

时间:2014-10-23 17:20:20

标签: c# asp.net-web-api asp.net-web-api2

我使用Web API 2创建了一个基于OData的Web后端。这在控制器上使用AuthorizeAttribute非常有效。

我希望能够通过标准的html表单和提交上传文件。

我们正在传递OAuth令牌,该令牌通常会在OData请求的标头中传递,作为隐藏的输入字段。

问题:如何在控制器中验证这一点?

1 个答案:

答案 0 :(得分:4)

然后你需要取消保护令牌,然后取消"票证"检查是否有主体以及是否经过身份验证(检查属性IsAuthenticated)。使用控制器内的以下代码:

string token = "Your token goes here";
Microsoft.Owin.Security.AuthenticationTicket ticket = Startup.OAuthBearerOptions.AccessTokenFormat.Unprotect(token);