Dela via


Tom skärm när du loggar in på en SharePoint-webbplats

Symptom

Du ser en tom skärm när du loggar in på en annan SharePoint-webbplats än webbplatsen för central administration. Dessutom upplever du följande problem:

  • När ett fel inträffar innehåller felmeddelandet inte korrelations-ID:t för begäran.

  • Följande felmeddelande loggas i ULS-loggen (Unified Logging System):

    Foundation General 8nca Medium Application error when access /, Error=Exception of type 'System.ArgumentException' was thrown. Parameter name: encodedValue at Microsoft..Administration.Claims.SPClaimEncodingManager.DecodeClaimFromFormsSuffix(String encodedValue) at Microsoft.SharePoint.Administration.Claims.SPClaimProviderManager.GetProviderUserKey(IClaimsIdentity claimsIdentity, String encodedIdentityClaimSuffix) at Microsoft..Administration.Claims.SPClaimProviderManager.GetProviderUserKey(String encodedIdentityClaimSuffix) at Microsoft.SharePoint.ApplicationRuntime.SPHeaderManager.AddIsapiHeaders(HttpContext context, String encodedUrl, NameValueCollection headers) at Microsoft.SharePoint.ApplicationRuntime.SPRequestModule.PreRequestExecuteAppHandler(Object oSender, EventArgs ea) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)       
    
  • När du kontrollerar SharePoint Health Analyzer-aviseringen står det att ingen av SharePoint-servrarna utfärdar token. Du kan dock bläddra på sts-sidan (Security Token Service).

  • Du använder följande skript för att kontrollera om STS genererar token:

    $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local  
    $webServiceCollection = new-object Microsoft.SharePoint.Administration.SPWebServiceCollection($farm)  
    foreach ($service in $webServiceCollection)  
    {  
       foreach ($webApp in $service.WebApplications)  
       {  
          $firstWebApp = $webApp  
          #Get the context  
          $context = $firstWebApp.GetResponseUri([Microsoft.SharePoint.Administration.SPUrlZone]::Default)  
          Write-Host "Web Application Context:" $context.AbsoluteUri  
          #Call the token generator function  
          $token = [Microsoft.SharePoint.SPSecurityContext]::SecurityTokenForContext($context)  
          Write-Host "Token:" $token.InternalTokenReference  
          Write-Host "**************************"  
       }  
    }  
    

    Och du får följande felmeddelande:

    Token:
    **************************  
    Web Application Context: [http://Contoso.com/](http://contoso.com/)  
    Exception calling "SecurityTokenForContext" with "1" argument(s): "The serverwas unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults(either from ServiceBehaviorAttribute or from the< serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework SDK documentation and inspect the server trace logs."
    

Orsak

Det här problemet uppstår om FIPS (Federal Information Processing Standard) är aktiverat på SharePoint-servern.

Åtgärd

Lös problemet genom att inaktivera FIPS genom att följa dessa steg på den dator där SharePoint Server är installerat:

  1. Starta konsolen Lokal säkerhetsprincip (secpol.msc). Gå till Säkerhetsinställningar>Säkerhetsalternativ förlokala principer>.
  2. Leta upp principen Systemkryptografi: Använd FIPS 140-kompatibla kryptografiska algoritmer, inklusive krypterings-, hash- och signeringsalgoritmer .
  3. Om principen är aktiverad högerklickar du på principen, klickar på Egenskaper, väljer Inaktiverad och klickar sedan på OK.
  4. Öppna Registry Editor och leta upp följande registerundernyckel:
HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy  
  1. Om värdet för Aktiverad är 1 högerklickar du på Aktiverad, klickar på Ändra, skriver 0 i Värdedata och klickar sedan på OK.
  2. Starta om datorn.

Mer information

SharePoint Server använder flera Windows-krypteringsalgoritmer för att beräkna hashvärden som inte uppfyller FIPS (Federal Information Processing Standard) 140-2, säkerhetskrav för kryptografiska moduler. Dessa algoritmer används inte i säkerhetssyfte. De används för intern bearbetning. SharePoint Server använder till exempel MD5 för att skapa hash-värden som används som unika identifierare. Eftersom SharePoint Server använder dessa algoritmer stöder programmet inte inställningen för Windows-säkerhetsprinciper som kräver FIPS-kompatibla algoritmer för kryptering och hashning.

Behöver du fortfarande hjälp? Gå till SharePoint Community.