自托管Web API身份验证

时间:2013-05-18 20:31:38

标签: c#-4.0 asp.net-web-api forms-authentication

我有一个自托管的Web API,它使用DotNetOpenAuth发布授权令牌。基本上,该项目由2个ApiController端点(授权和令牌)组成。在能够调用任一端点之前,我想强制客户端必须登录表单。 (形式认证我猜)。但是,它似乎不适用于自托管的Web API项目,因此,我正在尝试自己实现一些东西。

截至目前,当用户调用Authorize web get方法时,我呈现登录页面并强制他们登录。但是,我希望有一个机制,以便用户登录后,我可以发送cookie响应。我了解如果您在回复中编写cookie,浏览器将在后续请求时自动发送任何相关的cookie。

但是,我的测试客户端使用HttpWebRequest来调用我的web api。我是否必须构建机制以将响应cookie保存到硬盘上的文件中,然后将其读回,并在后续请求中与HttpWebRequest相关联?或者,我可以利用框架中内置的东西(就像浏览器会自动为我处理这个问题一样)。

我想,一旦我能够解决这个问题,我就可以扩展AuthorizationFilterAttribute,并使用它来检查传入cookie的有效性。

感谢。任何帮助或建议表示赞赏!

0 个答案:

没有答案