使用MVC客户端OpenID / OAuth的Web API应用程序中的安全性

时间:2012-10-09 19:07:52

标签: authentication oauth openid authorization asp.net-web-api

我知道已经有很多问题了,我一直在阅读博客并查看样本超过一周而且我仍然有点朦胧,其中一些是如何在真实中工作的世界。样本非常有用,有些非常复杂,有些很简单,没有一个真正澄清我的一些问题。

该系统包括:

  • Web App(自己的IIS站点,使用SSL,使用公共API)
  • 公共API(自己的IIS站点,使用SSL)
  • 桌面小工具
  • 移动版(iOS,Android)
  • 第三方应用

如何最好地处理用户注册和帐户创建?在提供OpenID的同时,还需要对Web应用程序进行“本地”登录。在API上接受基本数据类型(字符串/日期等...)值的方法,然后创建一个帐户,就会给垃圾邮件发送者带来麻烦和危险信号。是否最好通过使用视觉CAPTCHA检查的网站来处理这个问题? Facebook移动应用程序如何处理此注册方案?

许多样本似乎也使用默认表单身份验证数据库的小子集来表示成员身份。然后,它们根据用例以各种不同的方式使用Entity Framework和Membership,WebSecurity或FormsAuthentication,Roles Provider类。对于安全后端,是否有其他方法可以考虑这种方法?我们的数据库人正在考虑自己编写,但我们还需要构建自己的用户管理应用程序:(

一旦用户注册并登录到Web应用程序,我就无法继续对WebAPI上的每个调用进行身份验证和授权。我现在假设API应该只实现OAuth并将Web应用程序视为另一个客户端应用程序,如移动应用程序和第三方应用程序。

我想我已经读了太多而没有玩代码来解决这个问题。有很多方法。

TIA,

0 个答案:

没有答案