Поделиться через


Требования к конфигурации сервера SharePoint для поддержки шифрования AES Kerberos при возникновении ошибок

Исходный номер базы знаний: 4501051

Симптомы

После изменения параметра сетевой безопасности возникают ошибки: настройте типы шифрования, разрешенные для Kerberos с помощью локальной политики или групповой политики, из значений по умолчанию в значение, которое разрешает только следующие типы шифрования:

  • AES128_HMAC_SHA1
  • AES256_HMAC_SHA1
  • Будущие типы шифрования

Если ошибки записываются в журналы универсальной системы ведения журналов SharePoint (ULS), они указывают, что запрошенный тип шифрования не поддерживается KDC. Действия, которые активируют эти ошибки, включают (но не ограничиваются):

  • Доступ к странице "Управление учетной записью службы" в центре администрирования
  • Доступ к странице администрирования поиска (топология поиска может не отображаться)
  • Внесение изменений в конфигурацию поиска

Базовое сообщение об ошибке, записанное в журналы SharePoint ULS:

Исключение: System.ServiceModel.Security.SecurityNegotiationException: сбой вызова SSPI см. внутреннее исключение.
>--- System.Security.Authentication.AuthenticationException: сбой вызова SSPI см. внутреннее исключение.
>--- System.ComponentModel.Win32Exception: запрошенный тип шифрования не поддерживается KDC
--- конец трассировки внутреннего стека исключений ---

Приложение службы Project Server может также записать аналогичное сообщение:

PWA:https://<SharePoint>/<Site>, ServiceApp:PWA, User:i:0#.w|Domain\UserId,
PSI: не удалось отправить уведомление о задании в очередь для guid> сайта<, исключения System.ServiceModel. Security.SecurityNegotiationException: сбой вызова SSPI см. внутреннее исключение.
>--- System.Security.Authentication.AuthenticationException: сбой вызова SSPI см. внутреннее исключение.
>--- System.ComponentModel.Win32Exception: запрошенный тип шифрования не поддерживается KDC

Во время подготовки служб профилей пользователей не удается запустить службу синхронизации профилей пользователей.

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

"UserProfileApplication.SynchronizeMIIS: не удалось настроить ILM, попытается повторно запуститься.
Исключение: System.Security.SecurityException: запрошенный тип шифрования не поддерживается KDC".

Другие компоненты могут записывать сообщения об ошибках, указывающие, что запрошенный тип шифрования не поддерживается KDC.

Причина

Это происходит из-за конфликта между пользовательской локальной политикой или групповой политикой и свойствами учетной записи службы в Active Directory. При настройке параметра свойства Network Security: настройка типов шифрования, разрешенных для Kerberos , чтобы сервер поддерживал только типы шифрования AES и будущие типы шифрования, сервер не поддерживает старые типы шифрования Kerberos в билетах Kerberos. Также важно отметить, что объекты учетной записи пользователя, созданные в Active Directory, не настроены для поддержки шифрования AES Kerberos по умолчанию.

Если сервер настроен на требование типов шифрования AES для Kerberos, но свойства учетной записи службы в Active Directory не были обновлены для поддержки шифрования AES, результатом является сценарий, в котором сервер не может согласовывать общий тип шифрования для билетов Kerberos.

Решение

Проблему можно устранить следующим способом.

  1. Определите все учетные записи, используемые в SharePoint в качестве учетных записей пула приложений и учетных записей служб.

  2. Найдите учетные записи в Пользователи и компьютеры Active Directory.

  3. Выберите Свойства.

  4. Перейдите на вкладку Учетная запись.

  5. В разделе " Параметры учетной записи" убедитесь, что выбран один или оба из следующих параметров. Это обеспечивает поддержку шифрования AES Kerberos на этих пользовательских объектах:

    • Эта учетная запись поддерживает 128-разрядное шифрование Kerberos AES
    • Данная учетная запись поддерживает 256-битовое шифрование Kerberos AES
  6. iisreset Выполните на серверах и перезапустите все связанные службы SharePoint, работающие в контексте измененных учетных записей служб.

Если проблема не устранена, попробуйте выполнить разрешение в SCCM: "Запрошенный тип шифрования не поддерживается ошибкой KDC при выполнении отчетов.

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

Чтобы проверить, настроен ли сервер SharePoint только для поддержки типов шифрования AES или более новых типов:

  1. На сервере запустите редактор политики локальной безопасности (secpol.msc).
  2. Разверните параметры безопасности локальных>политик>.
  3. Найдите сетевую безопасность: настройте типы шифрования, разрешенные для Kerberos.
  4. Выберите Свойства.

Если выбраны только следующие параметры:

  • AES128_HMAC_SHA1
  • AES256_HMAC_SHA1
  • Будущие типы шифрования

Снимок экрана: типы шифрования, разрешенные для Kerberos.

Затем необходимо включить поддержку шифрования AES Kerberos на пользовательских объектах Active Directory, которые используются для запуска служб SharePoint и пулов приложений.

Чтобы определить учетные записи службы SharePoint и проверить, настроены ли они для поддержки типов шифрования AES, можно использовать следующий скрипт PowerShell:

Add-PSSnapin Microsoft.SharePoint.Powershell
$AES_128 = 0x8
$AES_256 = 0x10
$Separator="\"
$option = [System.StringSplitOptions]::RemoveEmptyEntries
Write-Host "Retrieving SharePoint Managed Accounts" -ForegroundColor White
$SharePointAccounts=""
$ManagedAccounts=Get-SPManagedAccount
foreach ($ManagedAccount in $ManagedAccounts)
{
Write-Host "Checking Account: "$ManagedAccount.Username
$temp=$ManagedAccount.Username
$samaccountName=$temp.Split($separator,2, $option)[1]
$userobj=([adsisearcher]"samAccountName=$samaccountName").FindOne()
$EncryptionTypes=$userobj.properties.Item('msds-supportedencryptiontypes')[0]
#$EncryptionTypes
$HexValue='{0:X}' -f $EncryptionTypes
if ($EncryptionTypes -band $AES_128)
{
Write-Host "Account Supports AES128 bit encryption " -ForegroundColor Green
}
Else
{
Write-Host "Account Does Not have AES128 bit encryption support enabled" -ForegroundColor Red
}
if ($EncryptionTypes -band $AES_256)
{
Write-Host "Account Supports AES256 bit encryption " -ForegroundColor Green
}
Else
{ Write-Host "Account Does Not have AES256 bit encryption support enabled" -ForegroundColor Red
}
}
====================== END SCRIPT ========================================================