加载行为在 SharePoint 搜索结果 Web 部件属性中不再可用

原始 KB 数: 4052414

摘要

在 SharePoint Server 中设置搜索结果 Web 部件的属性时,可以通过将加载行为设置为同步或异步来指定返回的搜索结果何时出现在网页上。 如果使用同步加载,则站点容易受到跨站点搜索攻击。 强烈建议在加载网页后使用异步加载从浏览器发出查询。

SharePoint Enterprise Server 2016 安全更新说明:2018 年 12 月 11 日、 SharePoint Enterprise Server 2013 安全更新说明:2018 年 12 月 11 日和 SharePoint Foundation 2010 安全更新说明:2018 年 12 月 11 日,使用以下更改修复此漏洞:

  • 所有现有的搜索结果 Web 部件都会自动切换为使用异步加载。
  • 所有新创建的搜索结果 Web 部件都使用异步加载。
  • 加载行为不再是搜索结果 Web 部件属性用户界面 (UI) 的选项。

安装更新后,仍可以将加载行为选项添加回每个站点的 UI,其中加载行为的默认设置是异步的。 在执行此操作之前,我们强烈建议你仔细考虑是否可以在你的环境中利用此漏洞,并向 Web 部件所有者提供有关此漏洞的指导。

添加加载行为选项

若要将加载行为选项添加到 SharePoint 网站上的搜索结果 Web 部件的 UI,请执行以下步骤:

  1. 使用具有 SharePoint_Shell_Access 角色的用户帐户登录。

  2. 在 SharePoint 场中的其中一台服务器上,启动 SharePoint 命令行管理程序。

  3. 在Windows PowerShell命令提示符下运行以下命令:

    $sites = Get-SPSite
    $s = $sites[n]
    $s.RootWeb.AllowUnsafeUpdates = $true
    $s.RootWeb.AllProperties.Add("SyncSearchAllowed", 1)
    $s.RootWeb.Update()
    $s.RootWeb.AllowUnsafeUpdates = $false
    

    注意

    sites[n] 是指定网站的占位符。

设置加载行为

若要在 SharePoint Server 2013 或 2016 中设置加载行为,请参阅 在 SharePoint Server 中配置搜索结果 Web 部件的属性。 若要在 SharePoint Server 2010 Search Core 结果 Web 部件中设置加载行为,请执行以下步骤:

  1. 确认正在执行此过程的用户帐户是 Designers 组的成员。

  2. 在“搜索结果”页上,单击“网站操作”菜单,然后单击“编辑页面”。 “搜索结果”页将在编辑模式下打开。

  3. 在“搜索核心结果”Web 部件中,单击箭头,然后从菜单中选择“ 编辑 Web 部件 ”。

  4. “AJAX 选项”下,选择“选项”,确定 Web 部件返回的搜索结果何时显示在网页上。

    默认情况下,选中“ 使用异步加载 ”框,并在收到完整页面后从最终用户的浏览器发出查询。 如果清除“ 使用异步加载 ”框,则会在服务器上发出查询,并且搜索结果包含在从 SharePoint 发送回的页面响应中。

删除加载行为选项

若要从 SharePoint 网站上的搜索结果 Web 部件的 UI 中删除加载行为选项,请执行以下步骤:

  1. 使用具有 SharePoint_Shell_Access 角色的用户帐户登录。

  2. 在 SharePoint 场中的其中一台服务器上,启动 SharePoint 命令行管理程序。

  3. 在Windows PowerShell命令提示符下运行以下命令:

    $sites = Get-SPSite
    $s = $sites[n]
    $s.RootWeb.AllowUnsafeUpdates = $true
    $s.RootWeb.AllProperties.Remove("SyncSearchAllowed")
    $s.RootWeb.Update()
    $s.RootWeb.AllowUnsafeUpdates = $false
    

    注意

    sites[n] 是指定网站的占位符。