【发布时间】:2011-03-12 01:19:16
【问题描述】:
我想在尝试构建一个使用托管在另一个 asp.net 应用程序中的 WCF 服务的 asp.net Web 应用程序时收到 cmets。两个应用程序将存在于同一台机器上,但具有 WCF 服务的应用程序将无法从外部访问。将有两个 Web 服务器共享负载均衡器后面的负载。
两个应用程序的应用程序池将使用相同的本地用户帐户(Web 服务器不是域的一部分),因此我正在考虑使用带有 Windows 安全性的 WsHttpBinding 在客户端和内部 wcf 服务之间进行通信。
前端 asp.net 应用通过自定义成员/角色提供程序使用表单身份验证来对用户进行身份验证和授权。用户数据库位于 sql server 数据库中。
我需要以某种方式将用户详细信息(用户名 + 角色)传递给 wcf 服务,以便在 wcf 中可以根据登录前端的角色来验证和授权。我读到我需要使用“支持令牌”,但我还没有弄清楚如何使用它。
我还阅读了一些关于声明和 WIF 的内容,这看起来很有趣,但不知道如何在我的场景中使用它们。
有没有人可以给我关于架构的建议,也许还可以告诉我如何将用户名传递给 wcf 服务,如果可能的话,还可以告诉我如何使用基于声明的授权?
【问题讨论】: