Symptomer
En webdel, der afhænger af WPProperty , fungerer muligvis ikke længere korrekt og genererer a7wm1-hændelseskoder i ULS-logfiler (SharePoint Unified Logging System).
Årsag
Dette problem opstår, fordi SharePoint Server nu kræver, at farme erklærer de .NET-typer, der har tilladelse til at få adgang til WPProperty i web.config filen. De .NET-typer, der ikke er angivet, har ikke adgang til WPProperty af sikkerhedshensyn.
Løsning
Du kan løse dette problem ved at installere en af følgende opdateringer:
- Beskrivelse af sikkerhedsopdateringen for SharePoint Server 2019: 14. september 2021 (KB5002018)
- Beskrivelse af sikkerhedsopdateringen til SharePoint Enterprise Server 2016: 8. juni 2021 (KB5001946)
- Beskrivelse af sikkerhedsopdateringen for SharePoint Foundation 2013: 14. september 2021 (KB5002024)
Hvis du vil have webdelen til at fungere som forventet, skal du benytte følgende fremgangsmåde til at erklære den eller de berørte .NET-typer som tilladt at få adgang til WPProperty i web.config filen.
Vigtig
Tillad kun, at .NET-typer får adgang til WPProperty , når du har bekræftet, at det er sikkert at gøre det.
Åbn web.config filen med dit webprogram på hver server i din SharePoint-farm.
Find afsnittet konfiguration/SharePoint/SafeMode .
Tilføj en AllowedWPProperties-sektion , hvis den ikke allerede findes.
Tilføj et nyt AllowedWPProperty-element med attributterne type og propertyName for at repræsentere den type, der skal have tilladelse til at få adgang til 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>Gem ændringen i den web.config fil.
For at identificere de korrekte værdier for attributterne type og propertyName skal du forespørge ULS-loggen om a7wm1-hændelsesmærket og notere logposten. Det kunne f.eks. være:
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
Hvis du vil tillade, at denne type får adgang til WPProperty, skal du angive typeattributten AllowedWPPProperty til værdien for det blokerede AssemblyQualifiedName og angive attributten propertyName til værdien for det blokerede egenskabsnavn.
Ændringsoversigt
Følgende tabel opsummerer nogle af de vigtigste ændringer i dette emne.
| Dato | Beskrivelse |
|---|---|
| 14. september 2021 | To opdateringer er tilføjet i afsnittet "Løsning". |