از کار افتادن گردش کارهای Nintex بعد از آپدیت ویندوز

ترفند های شیرپوینت

چند روز پیش متوجه شدیم که از یک تاریخی به بعد، هیچ یک از گردش کارهای سایت «مدیریت مستندات» کار نکرده است. اگر چه از نینتکس هیچ چیز بعید نیست، ولی موارد مختلف را بررسی کردم و به نتیجه ای نرسیدم. طبق تجربه قبلی، یکی از گردش کارها را مجددا پابلیش کردم. در زمان پابلیش به خطای زیر رسیدم:

پس از جستجو در Google متوجه شدم که نصب یک آپدیت امنیتی ویندوز باعث بروز این مشکل شده است.

https://support.microsoft.com/en-us/help/4465015/sharepoint-workflows-stop-after-cve-2018-8421-security-update

حالا راه حل چیست؟

همانگونه که در لینک بالا بیان شده، باید اسمبلی هایی که اعلام شده برای اپلیکیشن ها بعنوان «قابل اعتماد» معرفی شوند. روش به اینصورت است که در فایل web.config اپلیکیشن ها در آدرس زیر:

<configuration>
<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>
<targetFx>

تگ معرفی اسمبلی ها اضافه شود. ولی اینکار دقت زیادی می خواهد و کار زمان بری هم هست.

راه حل چیست؟

یک خدا خیر داده ای به نام Joe Rodgers کار را ساده کرده است. اسکریپتی نوشته است که با اجرا آن، این کار بصورت خودکار انجام می شود.

https://gist.github.com/joerodgers/2302b394796c865818839d843bae2dad

دو اسکریپت نوشته شده است. اولی برای ما کافی است. فقط دقت کنید چون ما برای نینتکس نیاز داریم باید خط آخر را به شکل زیر تغییر دهیم:

Add-CodeDomAuthorizedType -IncludeNintexWorkflow

اسکریپت دیگر برای چیست؟

اینطور که نوشته اند، ممکن است برای برخی گردش کارها محدودتی در OWSTIMER.EXE وجود داشته باشد. لذا بهتر است که معرفی اسمبلی ها در config این بخش هم اضافه شود. برای همین اسکریپت دوم را ساخته است. بدون تغییری آن را اجرا می کنیم.

توجه داشته باشید این اسکریپت ها PowerShell هستند.