如何:使用 Secure Store Service 中的凭据连接到外部系统

上次修改时间: 2010年7月16日

适用范围: SharePoint Server 2010

当创建某个外部内容类型时,您需要指定用户应用来连接到该外部内容类型所基于的外部数据源的身份验证模式。在如何:创建外部内容类型主题中,您使用了传递身份验证,这是要设置的最简单的身份验证类型。当使用传递身份验证时,您只需以最终用户的标识进行身份验证。但是,如在如何:使用 Secure Store Service 连接到外部系统主题中所见,您可能需要使用Secure Store Service中的凭据向外部数据源进行身份验证。本主题介绍如何在 Microsoft SharePoint Designer 中创建外部内容类型时使用Secure Store Service中的凭据连接到外部数据源。

配合使用Secure Store Service与 Microsoft Business Connectivity Services (BCS) 时有以下三种类型的身份验证模式可用:

  1. Windows 凭据(使用模拟 Windows 标识进行连接):Microsoft SharePoint Server 2010 使用其默认Secure Store Service中的 Windows 凭据进行身份验证。示例:后端只向名为 domain\stusers 的 Windows 组帐户授予访问权限,因此连接到此后端的属于此组成员的所有用户都可以使用 domain\stusers 凭据来进行连接。

  2. 凭据(使用模拟自定义标识进行连接):在凭据模式中,针对类型数据库的外部系统,SharePoint Server 2010 使用其默认Secure Store Service中的数据库凭据进行身份验证。SharePoint Server 2010 将数据库凭据添加到连接字符串并将这些凭据传输到数据库服务器。示例:数据库只向名为 stdbuser 的非 Windows 帐户授予访问权限,因此连接到此后端的所有用户都需要使用 stdbuser 凭据。

    在适用于 Web 服务和 WCF 端点的凭据模式中,SharePoint Server 2010 使用不同于来自其默认Secure Store Service的 Windows 身份验证的凭据对 Web 服务和 WCF 端点进行身份验证。这些凭据用于进行基本身份验证或摘要式身份验证,具体取决于 Web 服务服务器的配置。由于基本身份验证和摘要式身份验证不足以保护凭据,因此应该使用 SSL 或 IPSec(或同时使用这两者)来保护 Web 服务服务器与运行 Business Data Connectivity (BDC) Service 的服务器之间的通信安全。

先决条件

  • Northwind 数据库的目标应用程序位于Secure Store Service中。

  • 名为 stusers 的 Windows 组帐户。

使用安全存储中的凭据创建新的外部内容类型

  • 按照如何:基于 SQL Server 表创建外部内容类型中概述的步骤从 Northwind 数据库创建一个 Customer 外部内容类型,若要另外添加与外部数据源的连接,请执行以下附加步骤:

    1. 在"数据源资源管理器"中选择与 Northwind 的现有连接,然后单击"删除连接"。这将删除旧连接。

    2. 单击"添加连接"。输入 Microsoft SQL Server 名称和数据库名称。

    3. 然后,选择"使用模拟 Windows 标识进行连接"并在"安全存储应用程序 ID"字段中输入 Northwind 的目标应用程序,而不是接受默认的"使用用户标识进行连接",如下所示。单击"确定"。此时将提示您提供 domain\stusers 凭据。Business Connectivity Services 将这些凭据存储在客户端上的 Windows 凭据管理器中,并在将来需要时进行查找,而不会再次提示您。

      SQL Server 连接属性

    4. 按照如何:基于 SQL Server 表创建外部内容类型中概述的其余步骤创建 Customer 外部内容类型。

将现有的新外部内容类型修改为使用安全存储中的凭据

  1. 启动 SharePoint Designer,然后打开包含外部内容类型的 SharePoint 网站。

  2. 在 SharePoint Designer 中,单击左侧导航窗格上的"外部内容类型"。这将显示在该网站的服务应用程序的 BDC 元数据存储区中定义的所有外部内容类型。选择 Customer 外部内容类型。

  3. 在功能区上单击"编辑连接属性"。这将显示"连接属性"对话框。

  4. 从身份验证模式下拉列表中选择"模拟 Windows 标识",并在"安全存储应用程序 ID"字段中输入 Northwind 的目标应用程序 ID。这些设置仅应用在服务器上。若要在客户端上使用Secure Store Service,请单击"连接属性"对话框中的"客户端"选项卡。再次从身份验证模式下拉列表中选择"Windows 凭据",并在"安全存储应用程序 ID"字段中输入 Northwind 的目标应用程序。请注意,您需要在外部数据搜索的"搜索"选项卡中进行类似的更改。

  5. 单击"确定"以保存这些更改。此时将提示您提供 domain\stusers 凭据。Business Connectivity Services 将这些凭据存储在客户端上的 Windows 凭据管理器中,并在将来需要时进行查找,而不会再次提示您。

  6. 请注意,如果外部数据源使用非 Windows 凭据,您应从身份验证模式下拉列表中选择"RdbCredentials"(针对数据库)和"Credentials"(针对 WCF 和 Web 服务)选项。其余的步骤是相同的。