中国未来巨型空间站,个人网站变现,邮箱网站架构,牛魔王网站建设BCS#xff08;Business Connectivity Services#xff09;是SharePoint 2010中用于替换原先Microsoft Office SharePoint Server 2007企业版的业务数据目录#xff08;Business Data Catalog #xff0c;简称BDC#xff09;的一项新服务。 BCS相比BDC而言有许多改进… BCSBusiness Connectivity Services是SharePoint 2010中用于替换原先Microsoft Office SharePoint Server 2007企业版的业务数据目录Business Data Catalog 简称BDC的一项新服务。 BCS相比BDC而言有许多改进包括回写到数据源的功能通过类似SharePoint Workspace的Office套件提供脱机功能增强的工具集以及外部列表等等。 在这篇文章中我们将探讨BCS认证的相关内容包括你可能会遇到的一些问题以及克服或解决其中的一些问题的若干方法。 谈到连接后端数据源进行认证通常不外乎有两种身份验证的类型用户身份标识和模拟用户权限提升。用户身份标识就是指我们登录网站实所使用的用户标识直接把它传递给数据源并返回数据到 SharePoint。用户会根据自身身份标识的不同看到基于该用户身份的内容模拟用户权限提升时用户登录时使用他们自己的凭据但连接数据源时使用另一个用户的凭据通过模拟其他有权限访问数据源的用户来获取数据。两者各有优缺点。 企业希望将用户的身份传递给数据源这是一个很普遍的需求。 这种直接传递往往在开发环境中运行良好可一旦迁移到生产环境就会遭遇失败。究其原因就是众所周知的双跃点问题Double Hop Issue。 双跃点问题在BDC时代就已经存在了BCS中仍然存在该问题。这与其说是一个SharePoint的问题倒不如说是浏览器/ IIS的问题。当我们通过直通PassThrough方式连接到数据源时 Windows身份验证的用户安全令牌只能进行一次跳跃。就是从浏览器到IIS的一跳。在一个开发环境通常数据库服务器安装在与IIS同一台物理机器上因此一跳就可以满足要求了。然而在生产环境中通常很难碰到只有一台机器的情况因此凭据传递必须从浏览器到IIS再到SQL。用户因为这两次跳跃从而无法通过验证。 在仍然要保证用户身份的前提下双跃点问题的一种解决方法是配置我们的环境使用Kerberos认证。 如果你目前的配置架构中并没有使用Kerberos想要突然改变一切让用户都使用Kerberos进行SharePoint身份认证是很困难的而且也很难得到你的管理员认可。Kerberos身份验证可以通过设置服务器间比如IIS和SQL的信任关系来避免双跃点问题。验证合格的凭证会在IIS服务器上被续签renew进而继续用于SQL服务器。 如果传递用户身份对你来说并不重要那么你可以使用模拟用户的方式进行数据源认证从而克服双跃点问题。Business Connectivity Services认证中的一个选项是“RevertToSelf”。 当选择RevertToSelf时并不会以用户身份而是使用了进程帐户也就是BCS运行时服务所用的帐户)身份进行数据源验证。这也就是意味着每个SharePoint用户无论其身份如何都将使用相同的帐户连接到数据源。这听起来像一个安全问题但实际上这种方式工作的非常好。因为你还可以在SharePoint级别上为每个用户或组指定权限。 比如你可以在SharePoint中指定执行功和写回的权限。这样就可以弥补安全方面的问题。这种方式确实可以称为最佳实践了。因为你可以在SQL里分配每个表视图存储过程的权限然后将定制好的SQL权限直接分配到某个 SharePoint用户帐户。 Business Connectivity Services认证支持的另一种方法是使用安全存储服务Secure Store Services 简称SSS。安全存储服务SSS是SharePoint 2007中的单点登录Single Sign On 简称SSO的升级换代。 SSS为我们提供了一个选择可以将凭据存储在安全存储数据库驻留于SharePoint服务器中。然后凭据以“用户到用户”或“域组到用户”的方式进行映射。这样凭据就可以在SharePoint服务器上进行续签(renew)。 有关SSS 我们会单独在一篇博文中进行讨论。 我们无法做到真正推荐一种BCS认证机制可以用于所有的组织机构或企业公司。因为每个组织都有自己不同的环境配置和管理策略因此只能提供若干种选择。 在SharePoint Designer 2010里连接到SQL Server时界面提供了下列认证的选项 使用用户标识进行连接使用模拟Windows标识进行连接使用模拟自定义标识进行连接 以上我们介绍了BCS身份验证的类型。接下来我们将深入到每一种认证类型的细节看一下具体如何在SharePoint Designer 2010中设置PassThrough 和 RevertToSelf身份验证模式。 首先介绍一下界面上的这些选择项 用户标识 使用用户标识进行连接其实就是曾在BDC认证中用过的名为直通(PassThrough)的验证方式。这意味着Windows身份验证的用户安全令牌将被从浏览器传递给IIS然后再传递到SQL。这个种方式在开发环境中往往没问题但是部署到生产环境可能会遇到上面谈到的双跃点问题。 模拟Windows标识 剩下的两个选项都是指向安全存储服务SSS。SSS将会在接下来的博文中进行全面解释。 SSS允许我们通过Windows用户或者某个自定义账户比如一个联盟的SAML用户帐户进行数据源连接。 RevertToSelf 在上面的对话框中你不会看到“RevertToSelf”的选项。要配置RevertToSelf时首先要选择 “使用用户标识进行连接”然后点确定。当连接建立好后再选择功能区中的“编辑连接属性”修改身份验证的方式如下图所示。 这里可以选择是用用户标识PassThrough还是BDC标识RevertToSelf进行连接。你要确保相应的标识对数据源具有读写权限。如果选择了SSS你还要进行一些额外的配置步骤。 在接下来的博文中我们将描述如何在SharePoint 2010中配置安全存储服务SSS。 参考资料 Business Connectivity Services Authentication business connectivity services passthrough reverttoself转载于:https://www.cnblogs.com/Sunmoonfire/archive/2010/06/29/1767673.html