如何保护我的AngularJS和Web Api应用程序

Shu*_*mii 23 asp.net security asp.net-web-api angularjs

我在ASP.NET Web Api服务器端使用AngularJS.对我来说,身份验证现在变得轻而易举?或者这太好了,不是真的吗?

所以我正在考虑使用Web Api的"个人用户帐户"身份验证.我认为这就是我所需要的一切.只要每个请求都经过身份验证,没有人可以获得任何数据,我就不应该做更多的权利吗?

或者我错过了一些关键的安全基础知识?

Cha*_*ani 16

在保护API方面,您有两种主要方法

  1. 基于Cookie的方法.这是传统方式,您使用标准表单对用户进行身份验证,然后设置表单身份验证cookie.所有未经授权的请求都会将用户带到登录页面 如果UI前端始终支持您的API,请使用work登录此方法.
  2. 其次是在请求的标头中使用授权令牌.一旦用户通过身份验证,他就会获得一个身份验证令牌,他必须将其附加到Authorize HTTP标头中的每个后续请求.在ASP.NET Web API中了解有关它的更多信息.这里的优点是您可以在不需要登录页面的情况下公开您的API.

但请记住,在使用第二种方法时,身份验证令牌必须存储在客户端,因为所有后续请求都需要此令牌.看看这篇博客文章Cookies vs Tokens.使用Angular.JS获得认证,以了解如何使用令牌.

希望能帮助到你.


Had*_*des 9

这是一篇关于使用Angular JS和基于WebAPI 2.0令牌的身份验证的精彩文章.

http://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-net-identity/