【发布时间】:2011-06-24 02:42:07
【问题描述】:
我需要知道通过我的 ASP.NET 网站将客户信息(身份、区域设置等)传递到我的后端 WCF RESTful Web 服务的最佳方法。我希望该解决方案可以移植(可重复使用)到其他应用程序,因为这种模型在我的组织中非常典型。
这是场景:
- ASP.NET 网站在 Web 上运行 位于我们周边的服务器 区。
- WCF 服务应用程序运行在 防火墙后面的应用服务器 我们的内部网络。
- 客户端(用户)可以在我们的 内部网络或网络时 他/她浏览网站。
- 网站调用网络服务 索取各种信息或 执行某些任务。
- Web 服务需要客户端的 为了执行这些信息 操作。
注意:该网站正在使用表单身份验证,而不是冒充用户。因此,使用 WCF 可扩展性(行为、检查器等)传递身份信息或当前文化信息只会为我们提供 Web 服务器的身份和文化,而不是实际客户端。
有什么建议吗?
【问题讨论】:
-
你在哪里验证客户端?
-
通过 Web 服务进行表单身份验证,该服务根据后端数据存储验证用户的凭据。如果成功,我会向包含角色等的 Web 应用程序返回一个自定义“用户”对象。正如 Roy 在下面建议的那样,这可以很容易地转换为“票证”,但我仍然需要一种方法将其传递给服务作为我需要的有关客户/用户的其他信息。