asp.net-mvc - Silverlight 4 - MVC 2 ASP.NET 成员(member)集成 "single sign on"

标签 asp.net-mvc silverlight asp.net-membership azure

场景:

  1. 我有一个使用 ASP.NET 表单例份验证的 ASP.NET MVC 2 站点。

  2. 该站点包含一个需要安全调用内部 Web 服务的 Silverlight 4 应用程序。

  3. Web 服务还需要公开公开,以便第三方进行身份验证访问。

挑战:

  1. 使用当前用户身份从 Silverlight 安全访问 Web 服务,无需用户在 Silverlight 应用程序中重新登录。

  2. 为第三方应用程序提供一种安全的方式,以使用相同的用户凭据访问相同的网络服务,最好不使用 ASP.NET 表单例份验证。

其他详细信息和限制:

  1. 此应用程序托管在 Azure 中。

  2. 如果可能的话,我们宁愿不使用 RIA 服务。

正在考虑的解决方案:

  1. 我认为,如果 Web 服务是托管 Silverlight 应用程序的同一个 MVC 站点的一部分,那么表单例份验证可能应该基于用户表单例份验证 cookie 从 Silverlight“正常工作”。但这似乎排除了单独托管 Web 服务的可能性(这在我们的场景中是理想的)。

  2. 对于第三方访问 Web 服务,我猜测具有不同身份验证解决方案的单独端点可能是正确的答案,但如果可能的话,我宁愿只支持一种版本的服务...

问题:

  1. 任何人都可以向我指出实现此类功能的示例应用程序吗?

  2. 您建议如何实现此解决方案?

最佳答案

您可以扩展 WCF 以使用 Membership 作为身份验证存储,并通过 Silverlight 应用程序将 Forms Auth Cookie(由 MVC 站点发送)重用到浏览器。

关于asp.net-mvc - Silverlight 4 - MVC 2 ASP.NET 成员(member)集成 "single sign on",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3017029/

相关文章:

c# - 将 asp.net 成员资格 web.config 设置移动到数据库这甚至可能吗?

unit-testing - 单元测试 MVC 身份验证 VS 2013

asp.net-mvc - 从 Controller 重定向重定向不起作用

jquery - 如果执行 document.html.style.display= '' ,为什么我的网站主页仍为空白?

c# - 将 Debug.WriteLine 流重定向到文本 block

c# - 为 mvc 图像/样式/脚本助手设置默认路径/路由

c# - 以编程方式打印 PDF 中的 BING map 位置

silverlight - 使用Silverlight 2进行短时音频缓存

c# - 选择nhibernate二级缓存方案时考虑的因素有哪些

jQuery UI 对话框表单和 ASP.NET MVC