从SharePoint 2010 BDC到WCF服务再到SQL Server时,如何克服双跳问题

问题描述

| 我们有一个SharePoint应用程序,需要从WCF服务检索外部数据,该服务又从sql Server获取数据(2005)。 SharePoint通过NTLM进行身份验证,并且凭据可以转换为SharePoint服务器上的声明。 WCF服务连接到先前由Web应用程序访问的数据库(该Web应用程序正在迁移到SP + WCF)。该数据库具有权限,因此必须使用最终用户的身份进行访问,这在客户端-> Web应用程序-> sql Server时很好,但是在客户端-> SharePoint-> WCF时失败服务-> sql Server。 我已经阅读了一些有关模拟和c2wts的信息,我认为适用于这种情况,但是我不确定它的适用范围。应该在SharePoint服务器还是服务服务器等上使用? 如何通过SharePoint和WCF服务保留最终用户的身份,以便能够访问sql Server?     

解决方法

您需要配置Kerberos身份验证。预先告诉您,它是PITA。 以下是一些入门的链接(我在SP2007上关注它们,但是如果使用SP2010,应该不会有太大区别): http://blogs.objectsharp.com/cs/blogs/max/archive/2008/08/01/implementing-kerberos-in-sharepoint-running-on-windows-server-2008.aspx http://blogs.msdn.com/b/martinkearn/archive/2007/04/23/configuring-kerberos-for-sharepoint-2007-part-1-base-configuration-for-sharepoint.aspx     ,解决此问题的另一种方法是使用安全存储。这样一来,您既可以将单个用户映射到bdc模型的单独存储的凭证,又可以将映射到单个凭证的用户组映射。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...