Príznaky
Webová časť, ktorá závisí od WPProperty , už nemusí fungovať správne a v denníkoch ULS (Unified Logging System) SharePointu generuje značky udalostí a7wm1 .
Príčina
Tento problém sa vyskytuje, pretože SharePoint Server teraz vyžaduje, aby farmy deklarovali typy rozhrania .NET, ktoré majú povolený prístup do funkcie WPProperty v súbore web.config. Typy .NET, ktoré nie sú uvedené, nebudú mať z bezpečnostných dôvodov prístup k WPProperty .
Riešenie
Ak chcete tento problém vyriešiť, nainštalujte niektorú z nasledujúcich aktualizácií:
- Popis aktualizácie zabezpečenia pre SharePoint Server 2019: 14. septembra 2021 (KB5002018)
- Popis aktualizácie zabezpečenia pre SharePoint Enterprise Server 2016: 8. júna 2021 (KB5001946)
- Popis aktualizácie zabezpečenia pre SharePoint Foundation 2013: 14. septembra 2021 (KB5002024)
Ak chcete, aby webová časť fungovala podľa očakávaní, vykonaním nasledujúcich krokov deklarujte príslušné typy rozhrania .NET ako povolené na prístup do WPProperty v súbore web.config.
Dôležité
Typom z rozhrania .NET povoliť prístup do WPProperty až potom, čo ste si overili, že je to bezpečné.
Otvorte súbor web.config webovej aplikácie na každom serveri vo farme SharePoint.
Vyhľadajte časť Konfigurácia/SharePoint/Núdzový režim .
Pridajte sekciu AllowedWPProperties , ak ešte neexistuje.
Pridajte nový prvok AllowedWPProperty s atribútmi type a propertyName , ktorý bude predstavovať typ, ktorý by mal mať povolený prístup do 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>Zmeny uložte do súboru web.config.
Ak chcete identifikovať správne hodnoty pre atribúty type a propertyName , dotazujte denník ULS na značku udalosti a7wm1 a poznačte si položku denníka. Príklad:
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
Ak chcete tomuto typu povoliť prístup k WPProperty, nastavte atribút typu AllowedWPPProperty na zablokovanú hodnotu AssemblyQualifiedName a atribút propertyName nastavte na hodnotu zablokovaného názvu vlastnosti.
História zmien
V nasledujúcej tabuľke sú zhrnuté niektoré z najdôležitejších zmien v tejto téme.
| Dátum | Popis |
|---|---|
| 14. septembr 2021 | Pridané dve aktualizácie v časti Riešenie. |