哪一个是对的网页API的最好方法验证,考虑到数据的安全性是至关重要的,在Azure上的ASP.NET应用程序运行?
Answer 1:
当认证处理和保护Web API我建议你遵循多米尼克·拜尔的指导方针。 有可能是在世界ASP.NET身份管理没有更好的专家。
您可以找到他的博客http://leastprivilege.com/和的NuGet,Thinktecture.IdentityModel一个优秀的Web API身份包- http://nuget.org/packages/Thinktecture.IdentityModel与大多数优秀的开源库,因为所有的功能是提供您免费的,没有必要推倒重来。
这是.NET 4.0 / WIF和.NET 4.5(包括支持MVC和Web API)顶至底的身份和访问控制库。
如果您想了解更多关于保护Web API,你也应该看这个视频http://vimeo.com/43603474 -从NDC奥斯陆2012 Dominick的谈话。
Answer 2:
诸如此类的问题都非常“开放”,这一切都取决于你的项目的要求。 如果你想安全,你应该考虑的不同的安全技术措施的组合。
以HTTPS联合多因子认证 。 一个例子是客户端证书认证(存储在软件狗私钥)和基本身份验证(用户名/密码)。 这可以确保你的是,即使有恶意的人得到的用户名和密码保持,他将不能够没有硬件加密狗来访问应用程序。 而反过来也是如此,即使硬件令牌被盗,这将是在不知道用户名和密码也没用。
这些可能是一些好的博客文章,让你开始:
- 使您的ASP.NET Web API的安全
- 保护ASP.NET的WebAPI使用客户端证书
而且,即使这个适用于Web一般来说,你应该阅读的OWASP十大.NET开发与别的,然后再继续。
文章来源: Web API Authentication best practice