Visse typer, der arver fra IDictionary, blokeres fra deserialisering (KB5043462)

Gælder for
SharePoint Server Subscription Edition SharePoint Server 2019 SharePoint Server 2016

Symptomer

Nogle typer, der arver fra IDictionary, blokeres fra deserialisering efter anvendelse af sikkerhedsopdateringer fra september 2024 til SharePoint Server. Når dette problem opstår, logføres følgende fejlmeddelelse og hændelseskoderne "4nsby" eller "4nss4" i ULS-logfiler (SharePoint Unified Logging System):

Bemærk

Der blev fundet en ikke-understøttet IDICTIONARY-type. Type: <Type>, Samling: <Samling>

Årsag

Dette problem opstår, fordi typen ikke er på den tilladte liste over deserialiseringer.

Løsning

Hvis problemet opstår i w3wp.exe-processen, kan farmadministratoren løse problemet ved at føje de blokerede typer til listen over pålidelige filer i Web.config filen, men kun hvis du er sikker på, at disse typer er sikre.

Dette gør du ved at tilføje et nyt AllowedItem-element med navnet AllowedIDictionaryType og angive enten egenskaben Type eller Assembly . Dette element skal tilføjes under sektionen configuration/SharePoint/SafeMode/AllowedListItems i filen Web.config. Følgende er et eksempel:

<SafeMode

            MaxControls = "200" 

            CallStack = "false"

            DirectFileDependencies ="10"

            TotalFileDependencies = "250"

            AllowPageLevelTrace = "false"

            ControlCompatMode="false"

            >

            <PageParserPaths>

            </PageParserPaths>

         <AllowedListItems>

                     <AllowedItem Name="AllowedIDictionaryType" Type="Microsoft.SharePoint.Portal.WebControls.RSSAggregatorWebPart, Microsoft.SharePoint.Portal, Version=15.0.0.0, Culture=neutral, PublicKeyToken=xxxxxx"/>

                   <AllowedItem Name="AllowedIDictionaryType" Assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxxx"/>

         </AllowedListItems>

</SafeMode>