Hi Adrian Durica
Thank you for reaching out to Microsoft Q&A forum
Based on my research, the problem you're facing is related to recent security changes in SharePoint 2019 cumulative updates (CUs) that introduced stricter validation for workflow XOML files. The error:
Potentially malicious xoml node: <ns2:CollectFeedbackTaskProcess
is triggered because the CollectFeedbackTaskProcess activity is not allow-listed in the configuration files. This started after the September 2024 CU, which added a security fix requiring explicit allow-listing of workflow actions in web.config and owstimer.exe.config files. If these entries are missing or incorrect, workflows fail with event tag c42q0 in ULS logs.
For more insight:
https://adamsorenson.com/sharepoint-2016-2019-se-workflows-are-not-working-after-september-2024-update/
https://blog.stefan-gossner.com/2024/12/11/resolved-trending-issue-problems-with-workflows-after-applying-september-2024-cu-for-sharepoint-2016-2019-se/
Note: Microsoft is providing this information as a convenience to you. These sites are not controlled by Microsoft, and Microsoft cannot make any representations regarding the quality, safety, or suitability of any software or information found there. Please ensure that you fully understand the risks before using any suggestions from the above link.
About the reason why your current fix doesn't fit, I see you added:
<authorizedType Assembly="Microsoft.Office.Workflow.Actions, Version=16.0.0.0, Culture=neutral, PublicKeyToken=null" Namespace="Microsoft.Office.Workflow.Actions" TypeName="*" Authorized="True" />
<authorizedType Assembly="Microsoft.Office.Workflow.Actions, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.Office.Workflow.Actions" TypeName="CollectFeedbackTaskProcess" Authorized="True" />
But The PublicKeyToken should not be null for Microsoft assemblies. It must match the actual assembly signature (usually 71e9bce111e9429c for SharePoint) and what you need to add these entries both in web.config for each web application AND in owstimer.exe.config because the Workflow Timer Service executes workflows.
Therefore, in this context, instead of manual edits, use PowerShell WebConfigModifications to ensure consistency across all servers:
Add-PSSnapin Microsoft.SharePoint.PowerShell
$modification = New-Object Microsoft.SharePoint.Administration.SPWebConfigModification
$modification.Path = "configuration/System.Workflow.ComponentModel.WorkflowCompiler/authorizedTypes/targetFx"
$modification.Name = "authorizedType[@Assembly='Microsoft.Office.Workflow.Actions, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' and @Namespace='Microsoft.Office.Workflow.Actions' and @TypeName='*' and @Authorized='True']"
$modification.Sequence = 0
$modification.Owner = "WorkflowFix"
$modification.Type = [Microsoft.SharePoint.Administration.SPWebConfigModification+SPWebConfigModificationType]::EnsureChildNode
$modification.Value = "<authorizedType Assembly='Microsoft.Office.Workflow.Actions, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' Namespace='Microsoft.Office.Workflow.Actions' TypeName='*' Authorized='True' />"
Get-SPWebApplication | ForEach-Object {
$_.WebConfigModifications.Add($modification)
$_.Update()
}
# Apply changes
Install-SPApplicationContent
After applying changes, restart IIS and the SharePoint Timer Service.
Additionally, Microsoft released a December 2024 CU that auto-adds required entries for built-in actions. If possible, apply the latest CU and run the SharePoint Configuration Wizard to fix this automatically.
Hope my answer will help you, for any further concern, kindly let me know in the comment section.
If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.