2012-08-31 282 views

回答

43

在处理身份验证和保护您的Web API时,我建议您遵循Dominick Baier设置的指导原则。世界上可能没有更好的ASP.NET身份管理专家。

就可以找到他在http://leastprivilege.com/博客,并在一个的NuGet大网络API身份包装,Thinktecture.IdentityModel - http://nuget.org/packages/Thinktecture.IdentityModel 与大多数优秀的开源库,因为所有的功能是提供您免费的,有不需要重新发明轮子。

这是一个从头到尾的标识& .NET 4.0/WIF和.NET 4.5的访问控制库(包括对MVC和Web API的支持)。

如果您想了解更多关于保护Web API,你也应该看这个视频http://vimeo.com/43603474 - 从NDC奥斯陆2012年

5

问题,如这些Dominick的谈话是非常“开放”,这一切都取决于需求你的项目。如果你想要安全,你应该考虑不同安全措施的组合。

以HTTPS结合Multi-factor authentication。客户端证书认证(存储在加密狗上的私钥)和基本认证(用户名/密码)就是一个例子。这样可以确保即使恶意的用户获取了用户名和密码,他也将无法在没有硬件加密锁的情况下访问该应用程序。另一种方式也是如此,即使硬件令牌被盗,在不知道用户名和密码的情况下也是无用的。

这些可能是一些好的博客文章,让你开始:

而且,即使这个数据适用于一般的网络,你应该继续之前阅读the OWASP Top 10 for .NET developers还要别的吗。

相关问题