Ознаки
Веб-частина, яка залежить від WPProperty, може працювати неправильно та генерувати позначки подій a7wm1 SharePoint журналах уніфікованої системи журналювання (ULS).
Причина
Ця проблема виникає, тому що SharePoint Server тепер вимагає ферм для оголошення типів .NET, яким дозволено доступ до WPProperty у файлі web.config. Типи .NET, яких немає в списку, не матить доступу до WPProperty як міркування безпеки.
Спосіб вирішення
Щоб вирішити цю проблему, інсталюйте одне з таких оновлень:
-
Опис оновлення системи безпеки для SharePoint Server 2019 14 вересня 2021 р. (KB5002018)
-
Опис оновлення системи безпеки для SharePoint Enterprise Server 2016: 8 червня 2021 р. (KB5001946)
-
Опис оновлення системи безпеки для оцінок SharePoint 2013 року: 14 вересня 2021 р. (KB5002024)
Щоб веб-частина працювала належним чином, виконайте наведені нижче дії, щоб оголосити відповідні типи .NET як дозволені для доступу до WPProperty у файлі web.config.
Увага!: Дозволяйте доступ до WPProperty лише для типів .NET після підтвердження безпечності.
-
Відкрийте файл web.config веб-програми на кожному сервері у фермі SharePoint.
-
Знайдіть розділ configuration/SharePoint/SafeMode.
-
Додайте розділ AllowedWPProperties, якщо він ще не існує.
-
Додайте новий елемент AllowedWPProperty з атрибутами type та propertyName, щоб представити тип, який має бути дозволено отримувати доступ до 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> -
Збережіть зміни в web.config файлу.
Щоб визначити правильні значення атрибутів type і propertyName, запитайте журнал ULS для тега події a7wm1 і занотуйте запис у журналі. Наприклад:
"WPProperty has been blocked for security reason. blocked AssemblyQualifiedName is "<BlockedWPPropertyTypeName>, <allowedWPPropertyAssemblyName>, <AssemblyVersion>, <AssemblyLanguageSetting>, <AssemblyPublicKey>" | blocked property name is "<blocked WPProperty name>",
Щоб дозволити цьому типу отримати доступ до WPProperty,установіть атрибут AllowedWPPProperty атрибуту AllowedWPPProperty значення blocked AssemblyQualifiedName і встановіть атрибут propertyName значенням імені заблокованої властивості.
Журнал змін
У таблиці нижче наведено деякі найважливіші зміни в цій статті.
Дата |
Опис |
---|---|
14 вересня 2021 р. |
Додано два оновлення в розділі "Вирішення". |