将 SAML 声明与 SharePoint 2010 一起使用时速度可能会减慢
原文发布于 2011 年 7 月 14 日(星期四)
大家好,我们 SharePoint 支持中心的好友 Adam C. 最近向我们的技术人员提出了警告,因为使用 SAML 的客户现在投诉的频率越来越高了。首先是因为使用 SAML 身份验证登录网站的时间太长了。如果您通过 Fiddler 之类的工具监视请求,您会发现,请求的大部分时间花在了 SharePoint 服务器上,很可能是在 /_trust 子目录上。如果您遇到这种情况,发现您的请求将大部分时间花在了 SharePoint 服务器上,那么可能是因为您的场没有 Internet 访问权限。如果您在 SharePoint 服务器上启用了 CAPI2 日志记录功能,则可能会出现这种情况。下面,Adam 将介绍如何来处理这种情况:
CAPI2 是 Vista/2008 中新增的加密 API。CAPI2 诊断功能可以大幅优化 2000/XP/2003 中的 PKI 诊断功能。CAPI2 诊断信息会记录到 CAPI2 操作日志中(位于事件查看器中的“应用程序和服务日志\Microsoft\Windows\CAPI2\操作”位置)。您可以使用 CAPI2 日志功能来解决 Vista/2008 中的大多数 PKI 操作问题。
默认情况下,不会启用 CAPI2 日志记录。若要启用它,可以右键单击事件查看器中的 CAPI2 操作日志,选择“启用日志”。您也可以通过 Wevtutil 来启用它:
wevtutil.exe sl Microsoft-Windows-CAPI2/Operational /e:true
若要通过 Wevtutil 禁用它,语法是:
wevtutil.exe sl Microsoft-Windows-CAPI2/Operational /e:false
有关详细信息,请参阅解决 Windows Vista 中的 PKI 问题(该链接可能指向英文页面)
启用 CAPI2 日志记录功能后,您需要再次向 SharePoint 进行身份验证,然后查看事件查看器。如果看到事件代码 11 (BuildChain) 和 53(从网络中检索对象),则应进一步查看事件 53,了解它是否在尝试请求 https://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab(该链接可能指向英文页面)。如果是这种情况,并且您的场没有 Internet 访问权限,那么,在它尝试连接网站时,您就要忍受各种痛苦的超时。此时,您可以通过以下两种方式解决该问题:
- 将“SharePoint 根证书颁发机构”证书从 SharePoint 中导出,然后导入到受信任根证书颁发机构存储中。转到“证书 MMC”并导出 SharePoint 根证书颁发机构证书,然后再将其导入到受信任根证书颁发机构中。此时,您会发现,计算机证书存储中出现了这两个证书,另外,MMC 中的 SharePoint 节点中还出现了 SharePoint 根证书颁发机构证书。
- 通过组策略禁用从网络中检索第三方根证书。您可以通过以下方式来执行此操作:转到 GPO,然后依次选择“计算机配置”、“Windows 设置”、“安全设置”和“公钥策略”。在相应的位置找到名为“证书路径验证设置”的策略,打开它,然后单击“网络检索”选项卡。选中“定义这些策略设置”复选框,然后确保取消选中“自动更新 Microsoft 根证书程序中的证书(推荐)”。
完成这些更改后,您应该会看到登录时间明显缩短。再次感谢 Adam 与我们分享这些信息。
这是一篇本地化的博客文章。请访问 You May Experience Slowness When Using SAML Claims with SharePoint 2010 查看原文