Медлителость сайта из-за проверки CRL сертификата SharePoint STS

Симптомы

Предположим, что у вас есть веб-приложение, использующее проверку подлинности на основе утверждений в SharePoint Foundation 2010 или SharePoint Server 2010. Сервер SharePoint не имеет доступа к Интернету, или сервер защищен брандмауэром с ограниченным доступом к портам. В этой ситуации пользователи периодически испытывают длительные задержки при выполнении определенных операций, таких как вход на сайт или выполнение поиска. При выполнении этих операций пользователи также могут столкнуться с периодиями времени http.

Причина

SharePoint использует сертификаты для подписывания маркеров безопасности, которые выданы службой маркеров безопасности (STS). Как и все сертификаты, срок действия сертификата STS должен периодически проверяться, чтобы убедиться, что сертификат не был отозван. По умолчанию корневой сертификат в цепочке не добавляется в хранилище доверенных корневых сертификатов серверов SharePoint. В связи с этим проверка списка отзыва сертификата (CRL) для сертификата выполняется через Интернет. Если по какой-либо причине с сервера SharePoint не удается получить доступ к серверу CRL в Интернете, по умолчанию операция будет отсевом после 15 секунд. Даже если проверка CRL сбой после 15 секунд, страница SharePoint все равно может быть отрисовка после задержки.

Сбои проверки сертификатов можно отслеживать, включив журнал событий CAPI2 на сервере SharePoint. При включенной регистрации событий CAPI2 и сбое проверки сертификата в Интернете в журнале событий CAPI2 часто будут видеться следующие сообщения об ошибках:

  • Ошибка цепочки сборки

    ID события: 11
    Категория задач: цепочка сборки
    subjectName (взято из сведений о событиях): Служба маркеров безопасности SharePoint

  • Извлечение объекта из ошибки сети

    ID события: 53
    Категория задач: извлечение объекта из сети

    URL-адрес (взятый из сведений о событии): https://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab

Дополнительные сведения о том, как включить ведение журнала CAPI2, обратитесь в раздел "Дополнительные сведения".

Решение

Чтобы устранить эту проблему, выполните одно из следующих обходных решений:

Обходное решение 1

Установите сертификат Корневого органа SharePoint в хранилище доверенных корневых органов сертификации. После того как корневой сертификат добавляется в локальный магазин сертификатов, проверка сертификата больше не выполняется через Интернет. Ниже пошаговая сборка приведет к успешному поиску сертификата в локальном магазине, тем самым устраняя необходимость поиска объекта из сети. Для добавления корневого сертификата в локальный магазин сертификатов необходимо завершить следующие действия на каждом сервере SharePoint в ферме.

  1. Экспорт сертификата Корневого органа SharePoint в качестве физического (.cer) файла. Запустите командную команду SharePoint 2010 в качестве администратора, а затем запустите следующие Windows PowerShell команды:

    $rootCert = (Get-SPCertificateAuthority).RootCertificate   
    $rootCert.Export("Cert") | Set-Content C:\SharePointRootAuthority.cer -Encoding byte
    

    Примечание Это будет экспортировать внутренний корневой сертификат (.cer-файл) для SharePoint в Drive C. Этот файл можно скопировать и использовать на всех серверах фермы для импорта без повторного запуска команд PowerShell.

  2. Импорт сертификата Корневого органа SharePoint в хранилище доверенных корневых органов сертификации. Чтобы добавить сертификат Root Authority SharePoint в хранилище доверенных корневых органов сертификации, выполните следующие действия:

    Примечание "Администраторы" — это минимально необходимое членство в группе для выполнения этих действий.

    1. Нажмите кнопку Начните, введите mmc в Начните поиск и нажмите кнопку Ввод.
    2. В меню File нажмите кнопку Добавить или Удалить привязку.
    3. В соответствии с доступными оснастками щелкните Сертификаты и нажмите кнопку Добавить.
    4. В этой оснастке всегда будет управлять сертификатами для, выберите учетную запись Компьютера, а затем нажмите кнопку Далее.
    5. Выберите локальный компьютер и нажмите кнопку Готово.
    6. Если у вас нет дополнительных вставки для добавления в консоль, нажмите кнопку ОК.
    7. В дереве консоли дважды щелкните Сертификаты.
    8. Щелкните правой кнопкой мыши хранилище доверенных корневых органов сертификации.
    9. Щелкните Все задачи, нажмите импорт для импорта сертификата, а затем выполните действия мастера импорта сертификатов.

Обходное решение 2

Отключить автоматическое обновление корневых сертификатов на Серверах SharePoint. Для этого выполните следующие действия:

  1. В узле конфигурации компьютера в редакторе локальной групповой политики дважды щелкните Политики.
  2. Дважды щелкните Параметры Windows, дважды щелкните Параметры безопасности, а затем дважды щелкните Политики общедоступных ключей.
  3. В области Подробные сведения дважды щелкните Параметры проверки пути сертификата.
  4. Щелкните вкладку Сетевое ирисовка, выберите поле Определить эти параметры политики, а затем очистить сертификаты автоматического обновления в поле Корневого сертификата Microsoft (рекомендуется).
  5. Нажмите кнопку ОК и закроем редактор локальной групповой политики.
  6. Запустите gpupdate/force, чтобы политика немедленно вступила в силу.

Примечание С отключением автоматического обновления может потребоваться отслеживать новые выпуски, а затем вручную обновлять доверие сертификата по мере необходимости.

Последствия отключения автоматических корневых обновлений сертификата

Не должно быть особых последствий для SharePoint, так как мы используем самозаверяемые сертификаты и управляем ими самостоятельно. У сертификатов SharePoint есть срок действия, но существует правило здоровья, которое следит за этим, а затем предупреждает администратора об их обновлении или повторном перекате.

Основной аспект, который следует учитывать, — это другие сертификаты, используемые на компьютере (например, SSL-сертификаты, сертификаты для доверия к пакетам загрузки или для политики SAFER и т. д.), которые выданы из сертификатов, прикованных к сертификатам в хранилище доверенных корневых органов сертификации.

Дополнительная информация

Включить и сохранить журнал CAPI2 из пользовательского интерфейса просмотра событий

  1. Откройте окно просмотра событий. Чтобы открыть окно просмотра событий, нажмите кнопку Пуск, выберите пункт Панель управления, дважды щелкните значок Администрирование, а затем дважды щелкните значок Просмотр событий.
  2. Если появится диалоговое окно "Управление учетной записью пользователя", подтвердите, что отображаемого действия необходимо выполнить, а затем нажмите кнопку Продолжить.
  3. В области консоли разойдитесь по области просмотра событий, расширьте журналы приложений и служб, развяжете Microsoft, развяжете Windows, а затем развяжете CAPI2.
  4. Теперь можно выполнить следующие действия:
    • Чтобы включить ведение журнала CAPI2, щелкните правой кнопкой мыши Оперативный и выберите Включить журнал.

    • Чтобы сохранить журнал в файле, щелкните правой кнопкой мыши Оперативная, а затем выберите Сохранить события как. Файл журнала можно сохранить в формате EVTX (который можно открыть через viewer событий) или в формате XML.

    • Чтобы отключить ведение журнала CAPI2, щелкните правой кнопкой мыши Оперативная, а затем выберите отключение журнала.

    • Если в журнале есть данные, прежде чем попытаться воспроизвести проблему, рекомендуется очистить журнал. Это позволяет собирать только данные, соответствующие сценарию проблемы, которые будут собираться из сохраненного журнала. Чтобы очистить журнал, щелкните правой кнопкой мыши Оперативная, а затем выберите Clear Log.

    • Для диагностики CAPI2 журнал может быстро увеличиваться в размерах, и мы рекомендуем увеличить размер журнала как минимум до 4 мегабайт (МБ), чтобы зафиксировать соответствующие события. Чтобы увеличить размер журнала, щелкните правой кнопкой мыши Оперативная, а затем выберите Свойства. В свойствах журнала увеличить максимальный размер журнала.

      Примечание Размер журнала событий по умолчанию — 1 МБ.

Требуется дополнительная помощь? Перейдите в сообщество SharePoint.