WPPropertya käyttävät verkko-osat eivät ehkä enää toimi oikein SharePoint Serverissä (KB5003528)

Käytetään kohteeseen
SharePoint Server 2016 SharePoint Server 2019 SharePoint Foundation 2013 SP1

Ongelman ilmenemistapa

WPPropertya noudattava verkko-osa ei ehkä enää toimi oikein ja luo a7wm1-tapahtumatunnisteita SharePointin yhdistetyn kirjausjärjestelmän (ULS) lokeihin.

Syy

Tämä ongelma ilmenee, koska SharePoint Server vaatii nyt klustereita ilmoittamaan .NET-tyypit, jotka voivat käyttää WPPropertya web.config-tiedostossa. .NET-tyypeillä, joita ei ole luettelossa, ei ole suojaussyistä pääsyä WPPropertyyn .

Ratkaisu

Voit korjata ongelman asentamalla jonkin seuraavista päivityksistä:

Jotta verkko-osa toimisi odotetulla tavalla, määritä seuraavat vaiheet noudattamalla sitä, että .NET-tyypit, joihin tämä vaikuttaa, saavat käyttää WPProperty-tiedostoa web.config tiedostossa.

Tärkeää

Salli . NET-tyyppien käyttää WPPropertya vain, jos olet varmistanut, että se on turvallista.

  1. Avaa verkkosovelluksen web.config tiedosto kussakin SharePoint-klusterin palvelimessa.

  2. Etsi määritys/SharePoint/vikasietotila-osio .

  3. Lisää AllowedWPProperties-osio , jos sitä ei vielä ole.

  4. Lisää uusi AllowedWPProperty-elementtityyppi- ja propertyName-määritteillä vastaamaan tyyppiä, jonka haluat voivan käyttää WPPropertyä.

    <SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="15" TotalFileDependencies="250" AllowPageLevelTrace="false">
        <AllowedWPProperties>
            <AllowedWPProperty type="<allowedWPPropertyTypeName>,<allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" propertyName="<Allow WPProperty property name>"/>
        </AllowedWPProperties>
    </SafeMode>

  5. Tallenna muutos web.config tiedostoon.

Tunnista type- ja propertyName-attribuuttien oikeat arvot etsimällä ULS-lokista a7wm1-tapahtumatunniste ja merkitsemällä lokimerkintä muistiin. Esimerkki:
 
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
 
Jos haluat sallia tämän tyypin käyttää WPPropertyä, määritä AllowedWPPProperty-tyyppimäärite estetyn AssemblyQualifiedName-arvon arvoksi ja aseta propertyName-määrite estetyn ominaisuuden nimiarvoksi.

Muutoshistoria

Seuraavaan taulukkoon on koottu joitakin tämän aiheen tärkeimmistä muutoksista.

Päivämäärä Kuvaus
14.9.2021 Lisätty kaksi päivitystä "Ratkaisu"-osaan.