如何使用基于令牌的HTTP基本身份验证来保护MVC 4 .NET SPA模板中的Web API?

时间:2013-04-10 14:42:30

标签: asp.net-mvc oauth asp.net-web-api basic-authentication single-page-application

我一直在阅读有关保护WebAPI主题的不同文章,包括:

leastprivilege article

kevin junghans article

piotr walat's article

和其他许多人。

我想使用MVC 4.NET SPA模板(使用Backbone.js或其他JS库),我想保护SPA使用的WebAPI基本的http身份验证,在头文件中使用令牌,因为某些WebAPI客户端不支持表单身份验证所需的cookie。

SPA模板使用SimpleMembership和oauth,我想使用它并与基本的http身份验证结合使用。

我不清楚SPA模板是否开箱验证是否使用基本的HTTP身份验证和令牌对WebAPI进行身份验证和授权,或者我是否必须从上面的链接中将其拼凑起来?

1 个答案:

答案 0 :(得分:0)

这是一个非常大的主题,最好在插入模板之前完全理解它。

这是一个很棒的视频,可以帮助您完成所有工作:https://vimeo.com/43603474

您必须使用SSL进行任何基于令牌的身份验证(如oAuth)

一旦用户通过oAuth或您自己的会员提供商进行身份验证,您可以使用[授权]将任何Web Api方法归属,以确保未经身份验证的用户无法调用这些方法(将返回401 - 而不是如果未经过身份验证,则授权)