Konfigurationskrav för SharePoint-server för att stödja Kerberos AES-kryptering om fel inträffar

Ursprungligt KB-nummer: 4501051

Symptom

Du får fel när du har ändrat inställningen Nätverkssäkerhet: Konfigurera krypteringstyper som tillåts för Kerberos via lokal princip eller grupprincipobjekt från standardvärdena till ett värde som endast tillåter följande krypteringstyper:

  • AES128_HMAC_SHA1
  • AES256_HMAC_SHA1
  • Framtida krypteringstyper

Om fel skrivs till ULS-loggarna (SharePoint Universal Logging System) anger de att den begärda krypteringstypen inte stöds av KDC. Åtgärder som utlöser dessa fel är (men är inte begränsade till):

  • Öppna sidan Hantera tjänstkonto i Central administration
  • Åtkomst till sidan Sökadministration (söktopologin kanske inte visas)
  • Göra ändringar i sökkonfigurationen

Det underliggande felmeddelandet som skrivits till SharePoint ULS-loggarna är:

Undantag: System.ServiceModel.Security.SecurityNegotiationException: Ett anrop till SSPI misslyckades, se inre undantag.
>--- System.Security.Authentication.AuthenticationException: Ett anrop till SSPI misslyckades, se inre undantag.
>--- System.ComponentModel.Win32Exception: Den begärda krypteringstypen stöds inte av KDC
--- Slut på spårning av inre undantagsstack ---

Project Server-tjänstprogrammet kan också logga ett liknande meddelande:

PWA:https://<SharePoint>/<Site>, ServiceApp:PWA, User:i:0#.w|Domain\UserId,
PSI: det gick inte att skicka jobbmeddelande till kön för plats-Guid<>, undantags-System.ServiceModel. Security.SecurityNegotiationException: Ett anrop till SSPI misslyckades, se inre undantag.
>--- System.Security.Authentication.AuthenticationException: Ett anrop till SSPI misslyckades, se inre undantag.
>--- System.ComponentModel.Win32Exception: Den begärda krypteringstypen stöds inte av KDC

Under etableringen av användarprofiltjänster kan du inte starta synkroniseringstjänsten för användarprofiler.

När du startar användarprofiltjänsten i Central administration startar tjänsten och stoppas sedan omedelbart. Granskning av SharePoint ULS indikerar att det inte gick att starta är ett resultat av följande:

"UserProfileApplication.SyncMIIS: Det gick inte att konfigurera ILM, kommer att försöka köra igen.
Undantag: System.Security.SecurityException: Den begärda krypteringstypen stöds inte av KDC."

Andra komponenter kan skriva felmeddelanden som anger att den begärda krypteringstypen inte stöds av KDC.

Orsak

Det här beteendet uppstår på grund av en konflikt mellan den anpassade lokala principen eller grupprincipen och tjänstkontots egenskaper i Active Directory. När du konfigurerar egenskapsinställningen Nätverkssäkerhet: Konfigurera krypteringstyper som tillåts för Kerberos så att servern endast stöder AES-krypteringstyper och framtida krypteringstyper, stöder servern inte äldre Kerberos-krypteringstyper i Kerberos-biljetter. Det är också viktigt att observera att användarkontoobjekt som skapats i Active Directory inte har konfigurerats för att stödja Kerberos AES-kryptering som standard.

Om servern är konfigurerad för att kräva AES-krypteringstyper för Kerberos, men tjänstkontots egenskaper i Active Directory inte har uppdaterats för att stödja AES-kryptering, är resultatet ett scenario där servern inte kan förhandla om en gemensam krypteringstyp för Kerberos-biljetter.

Åtgärd

Lös problemet genom att följa dessa steg:

  1. Identifiera alla konton som används i SharePoint som programpoolskonton och tjänstkonton.

  2. Leta upp kontona i Active Directory - användare och datorer.

  3. Välj Egenskaper.

  4. Välj fliken Konto .

  5. I avsnittet Kontoalternativ kontrollerar du att ett eller båda av följande alternativ är markerade. Detta aktiverar stöd för Kerberos AES-kryptering på dessa användarobjekt:

    • Det här kontot stöder Kerberos AES 128-bitarskryptering
    • Det här kontot stöder Kerberos AES 256-bitarskryptering
  6. Utför en iisreset på servrarna och starta om alla SharePoint-relaterade tjänster som körs i kontexten för de ändrade tjänstkontona.

Om problemet inte är åtgärdat kan du prova lösningen i SCCM: "Den begärda krypteringstypen stöds inte av KDC"-felet vid körning av rapporter.

Mer information

Så här kontrollerar du om SharePoint-servern är konfigurerad för att endast stödja AES-krypteringstyper eller nyare typer:

  1. Starta den lokala säkerhetsprincipen Editor (secpol.msc) på servern.
  2. Expandera Säkerhetsinställningar>Säkerhetsalternativ för lokala principer>.
  3. Leta upp Nätverkssäkerhet: Konfigurera krypteringstyper som tillåts för Kerberos.
  4. Välj Egenskaper.

Om endast följande alternativ är markerade:

  • AES128_HMAC_SHA1
  • AES256_HMAC_SHA1
  • Framtida krypteringstyper

Skärmbild av krypteringstyper som tillåts för Kerberos.

Sedan måste du aktivera stöd för Kerberos AES-kryptering på Active Directory-användarobjekt som används för att köra SharePoint-tjänster och programpooler.

Du kan använda följande PowerShell-skript för att identifiera SharePoint-tjänstkontona och testa om de är konfigurerade för att stödja AES-krypteringstyper:

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 ========================================================