ASP.NET Web API - Windows Forms应用程序中的身份验证

5
我使用ASP.NET MVC 4开发了一个Web系统,现在需要通过.NET Web API和Windows Forms应用程序进行集成。目前一切都很顺利,但现在我需要使用Windows Forms应用程序对用户进行身份验证,并且该应用程序将在Internet上开放访问。
我的应用程序已经包含了在数据库中注册的用户并且当前使用ASP.NET MVC的“Authorize”组件进行身份验证。
目前为了通过客户端(Windows Forms应用程序)进行数据消费,我使用Microsoft ASP.NET Web Client API库。
如何安全地完成这个任务?有人有什么建议吗?

你的 Windows Forms 应用程序如何调用你的 WebApi? - Wouter de Kort
目前我使用的是微软ASP.NET Web Client API库,在客户端(Windows窗体应用程序)中进行数据消耗。 - Michel Andrade
2个回答

4
你可以扩展HttpClient以添加身份验证。一个示例可以在这里找到。它展示了如何将HttpMessageHandler添加到您的管道中,以使用OAuth进行身份验证。
这里是完整的ASP.NET Web API和HttpClient示例列表

0

请查看这个Q&A,其中描述了为Web API创建自定义AuthorizeAttribute的方法,该方法还使用http基本安全性对用户进行身份验证并从HTTP标头中获取凭据。请注意,ASP.NET Web API(System.Web.Http.AuthorizeAttribute)和MVC控制器(System.Web.Mvc.AuthroizeAttribute)有不同的AuthorizeAttribute。它们具有不同的行为。您不希望调用Web API时被重定向到登录页面。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接