联合的安全性 (Search Server 2008)

更新时间: 2008年10月

应用到: Microsoft Search Server 2008

 

上一次修改主题: 2008-10-02

本文介绍有关 Microsoft Search Server 2008 联合功能的安全性最佳方案。专为信息技术专业人员、系统架构师和搜索服务管理员阅读。

搜索联合概述

通过联合搜索最终用户可以发出一个查询,该查询可查询一个或多个与 Open-search 1.1 兼容的搜索引擎,并在单个搜索结果页上的单独 Web 部件中显示各个搜索引擎搜索的结果。这些源可以是企业内容库、其他搜索引擎或内容索引的某些部分。有关搜索联合的详细信息,请参阅联合搜索概述(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=122651&clcid=0x804) 和使用联合 (Search Server 2008)

身份验证类型

可以使用多种类型的用户身份验证(每用户和公用凭据)来执行联合搜索。但是,需要特别注意的是,收集凭据时在每用户身份验证中需要非 Kerberos 身份验证类型的 Web 部件扩展。在位置定义的身份验证和凭据信息部分,您为联合位置指定身份验证类型。身份验证类型可以为以下某种类型:

  • 匿名

    无需凭据即可连接到联合位置。

  • 通用

    每个连接使用一组相同的凭据连接到联合位置。

  • 每用户

    使用提交搜索查询的用户的凭据来连接到联合位置。

对于通用和每用户身份验证类型,您必须同时指定以下某个身份验证协议:

  • 基本

    基本身份验证是 HTTP 规范的一部分并且大多数浏览器都支持该验证。

    Security note安全 注意
    使用基本身份验证的 Web 浏览器以不加密的形式发送密码。通过监控网络中的通信,恶意用户可以使用公用的工具截获这些密码并进行解码。因此,我们建议不要使用基本身份验证,除非您确信该连接是安全的,例如使用专线或安全套接字层 (SSL) 连接。
  • 摘要式

    摘要式身份验证依赖于万维网联合会 (W3C) 网站上的 RFC 2617 规范中所定义的 HTTP 1.1 协议。这是因为摘要式身份验证要求遵循 HTTP 1.1,而某些浏览器不支持该协议。如果与 HTTP 1.1 不兼容的浏览器在启用摘要式身份验证后请求一个文件,则会因客户端不支持摘要式身份验证而拒绝该请求。摘要式身份验证只能在 Windows 域中使用。另外,摘要式身份验证仅使用 Microsoft Windows Server 2008、Microsoft Windows Server 2003 和 Microsoft Windows 2000 Server 域帐户,而且可能需要将密码存储为加密的纯文本的帐户。

  • NTLM

    用户记录存储在安全帐户管理器 (SAM) 数据库或 Active Directory 数据库中。每个用户帐户与两个密码关联:与 LAN Manager 兼容的密码和 Windows 密码。每个密码都经过加密,并且存储在 SAM 数据库或 Active Directory 数据库中。

  • Kerberos(仅限每用户身份验证类型)

    通过使用 Kerberos 协议,网络连接的一方可以验证另一方是否为其所要求的实体。虽然 NTLM 允许服务器验证其客户端的标识,但 NTLM 不允许客户端验证服务器的标识,也不允许某个服务器验证其他服务器的标识。NTLM 身份验证适用于假定其中的服务器是受信任服务器的网络环境。

  • 表单

    表单身份验证 Cookie 就是承载表单身份验证票证的容器。每个请求都将票证作为表单身份验证 Cookie 值来传递,服务器上的表单身份验证使用该值来标识要进行身份验证的用户。 但是,无 Cookie 的表单身份验证以加密格式在 URL 中传递票证。使用无 Cookie 的表单身份验证的原因是客户端浏览器可能会阻止 Cookie。在 Microsoft .NET Framework 2.0 中引入了此功能。

联合搜索中的安全修整

在使用联合搜索时要评估的一项重要内容是搜索结果的安全修整。安全修整是一种基于用户帐户权限来筛选返回结果的方法。默认情况下,将对以下各项返回的结果持续进行搜索结果的安全修整:

  • 本地服务器场

    在联合位置是开放式搜索位置并且为每用户身份验证配置了该位置的情况下,如果使用的是 Kerberos 身份验证,将会自动传递用户凭据。但是,将不会为 Kerberos 以外的其他身份验证协议自动传递用户凭据。若要确保在这些情况下,为当前用户安全修整了结果,请扩展联合结果 Web 部件以收集用户凭据。有关详细信息,请参阅创建带有凭据 UI 的自定义联合搜索 Web 部件(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=122653&clcid=0x804)。

  • 在未使用 Kerberos 身份验证的情况下,如果要确保为每个用户安全修整了 OpenSearch 位置(除本地服务器场外的所有其他位置)的搜索结果,还需要扩展联合搜索 Web 部件以收集用户凭据。

有关 Search Server 2008 安全性的详细信息,请参阅 Search Server 2008 的安全和保护搜索的安全注意事项 (Search Server 2008)