【发布时间】:2012-01-22 08:54:43
【问题描述】:
我有一个有趣的情况,我无法破解。这是我的 Silverlight 应用程序运行的环境。
我们有一个 SharePoint 2010 Intranet,它是应用程序的主要宿主。在 Web 部件页面上,我们有一个包含应用程序的 Silverlight Web 部件。我们使用客户端对象模型来推断登录的 SharePoint 用户是谁。此应用程序的用户访问他们用于登录的 AD 域之外的 SharePoint 站点;这意味着他们有一个 AD 帐户,但他们的计算机属于不同的域。 Silverlight 应用程序通过 SOAP 协议通过 https 调用 WCF 服务。
问题是,当从登录的 SharePoint 用户的上下文中调用时,我如何保护服务,以便唯一有效的请求者是 Silverlight 应用程序?
每个最终用户都有一个为他们创建的 AD 帐户。 SharePoint 网站是一个外联网,要求每个用户使用其 AD 凭据登录。但是,没有最终用户从属于域的计算机访问站点。
我已尝试使用 Windows 身份验证,但我们要求在用户登录 SharePoint 后,不得提示他们登录(Web 服务)。我尝试使用客户端对象模型将身份验证/凭据“传递”到服务,但没有运气。
我们必须在上线之前禁用匿名身份验证,所以我必须想出一种方法来保护服务,但不要让用户在应用程序中第二次登录。
【问题讨论】:
标签: silverlight wcf security sharepoint