Признаки
Некоторые типы, наследуемые от IDictionary, блокируются от десериализации после применения обновлений для системы безопасности SharePoint Server за сентябрь 2024 г. При возникновении этой проблемы следующее сообщение об ошибке и теги событий 4nsby или 4nss4 регистрируются в журналах единой системы ведения журнала SharePoint (ULS):
Обнаружен неподдерживаемый тип IDictionary. Тип: <Тип>, Сборка: <Сборка>
Причина
Эта проблема возникает из-за того, что тип отсутствует в списке разрешенных десериализаций.
Временное решение
Если проблема возникает в процессе w3wp.exe, администратор фермы может обойти эту проблему, добавив заблокированные типы в список доверенных в файле Web.config, но только если вы уверены, что эти типы безопасны.
Для этого добавьте новый элемент AllowedItem с именем AllowedIDictionaryType и укажите свойство Type или Assembly . Этот элемент следует добавить в раздел configuration/SharePoint/SafeMode/AllowedListItems в файле Web.config. Ниже приведен пример:
<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>