Skip to main content

Downloads

iMIS 2017

Latest

WebToolz for iMIS 2017 20.2.66.1644 / 2026 Q3.1 (v4.50)

Release and Installation Guide
WebToolz 4.50 - Release and Installation Guide
Release date: 27 August 2026  
Audience: iMIS administrators, implementation partners, and hosting providers
Release summary
WebToolz 4.50 targets iMIS 20.2.63 Q3 2026. The main assembly version is
`4.50.0.0` and it is compiled against ASI `20.2.66.1644` and
Telerik.Web.UI `2026.3.812.462`.

Changes from WebToolz 4.49:
- Updated iMIS and Telerik dependencies for the Q3 2026 iMIS release.
- Updated the WYSIWYG form control to use the iMIS safe-content HTML editor.
- Aligned the supplied `System.Buffers` assembly with the version required by
  the WebToolz DNS client dependency.
- Removed the legacy `RestApiCall` and `RestApiCallWithUsernamePassword`
  web-service operations. Integrations using either operation must be replaced
  with an explicitly implemented, allowlisted integration before upgrading.
- Removed the embedded IQA service credential. Every environment must now have
  its own shared secret of at least 32 characters.

Important package requirement
Install only a newly built WebToolz 4.50 release package supplied by Zentso.
Do not install or redistribute a 4.48 or 4.49 deployment ZIP: those packages
predate the 4.50 security changes.

Before installation, confirm the supplied `Zengage.FlexibleFormz.dll` reports
file version `4.50.0.0`:
(Get-Item '.\Zengage.FlexibleFormz.dll').VersionInfo.FileVersion
Before installation
1. Confirm the target is iMIS 20.2.63 Q3 2026 and its installed
   `Telerik.Web.UI.dll` is version `2026.3.812.462`.
2. Schedule an outage or maintenance window. Editing `Web.config` recycles the
   iMIS application.
3. Back up the iMIS `Net` directory, the current WebToolz files, and the current
   `Web.config`. Record the existing WebToolz version.
4. Generate a different service secret for each environment. Do not send it in
   email, store it in the release package, commit it to source control, or reuse
   the former embedded credential.
5. If WebToolz is installed on more than one web server, repeat the file and
   configuration work on every node. See the web-farm note below before copying
   an encrypted configuration file between servers.

Generate the shared secret
Run this in Windows PowerShell on an administrator workstation or server. Store
the output in the organisation's approved password or secrets manager:

$secretBytes = New-Object byte[] 32
[Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($secretBytes)
[Convert]::ToBase64String($secretBytes)
The resulting Base64 value is 44 characters and satisfies the minimum length.
Install the files
The examples below assume the default iMIS path
`C:\Program Files (x86)\ASI\iMIS\Net`. Use the site's actual path if different.

1. Copy the supplied `Zengage\Flexible Formz` folder to
   `Net\iParts\Zengage\Flexible Formz`.
2. Copy `Zengage.FlexibleFormz.dll` and the other supplied runtime DLLs to
   `Net\bin`.
3. If the ASI Scheduler uses WebToolz, copy `Zengage.FlexibleFormz.dll` to the
   scheduler `bin` directory as well.
4. Include the following file from the WebToolz release source: `WebToolzDeployment\Zengage\Flexible Formz\WebServices\web.config`. Update the endpoint addresse(s) in this file to use the target iMIS server's local IP addresse(s), then deploy it to `Net\iParts\Zengage\Flexible Formz\WebServices\web.config`. Do not leave the IP address from the release or another environment in place, except 127.0.0.1.
5. Copy the optional SAML and PLUS/API files only when those features are
   licensed and already configured for the site.
6. For a new installation, import `FormToolz Content Type.xml` in Staff site via
   RiSE > Maintenance > Content Types. Import the AFD IQA example only when AFD
   is licensed. Existing installations normally retain their existing content
   type and configuration.

Do not copy the Q4 2025 Telerik binding redirect into a Q3 2026 installation.
No WebToolz-specific Telerik redirect is required when the installed assembly is
version `2026.3.812.462`.
Configure the IQA service secret
The environment variable is preferred because it keeps the value out of
`Web.config`. Configure one of the following options, not both. If both are
present, the environment variable takes precedence.

Option A - machine environment variable (preferred)
Run an elevated Windows PowerShell session on each iMIS web server:
powershell
[Environment]::SetEnvironmentVariable(
    'WEBTOOLZ_SERVICES_SHARED_SECRET',
    '<paste-the-generated-secret>',
    'Machine')
Recycle the iMIS IIS application pool after setting or changing the variable so
the worker process receives the new value. Apply the same secret to every node
that belongs to the same iMIS site.

Option B - encrypted appSettings entry
Use this option where the hosting standard requires application settings in
`Web.config`. Add the following entry inside the existing `<appSettings>`
section, replacing the example value with the generated secret:
<add key="WebToolzServicesSharedSecret" value="<paste-the-generated-secret>" />
There must be exactly one entry with this key. Keep all existing iMIS settings
and do not replace the complete `<appSettings>` section.

Decrypt appSettings before editing
If `appSettings` is protected, its contents appear as `EncryptedData` and must
not be edited by hand. On the iMIS web server, open Command Prompt as
Administrator and run:

copy /Y "C:\Program Files (x86)\ASI\iMIS\Net\Web.config" "C:\Program Files (x86)\ASI\iMIS\Net\Web.config.pre-WebToolz-4.50.bak"
"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe" -pdf "appSettings" "C:\Program Files (x86)\ASI\iMIS\Net"
Edit `Web.config`, add or update `WebToolzServicesSharedSecret`, save it, and
then immediately protect the section again:

"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe" -pef "appSettings" "C:\Program Files (x86)\ASI\iMIS\Net" -prov "DataProtectionConfigurationProvider"
Confirm that `Web.config` now contains an encrypted `appSettings` section and
does not contain the plaintext secret. ASP.NET decrypts the section at runtime;
no application-code change is required.

If the site already uses another protected-configuration provider or an
external `appSettings` file, stop and follow the hosting provider's existing
procedure rather than changing the provider with the command above.

The `DataProtectionConfigurationProvider` output is protected for the machine
where it was created. Do not copy that encrypted `Web.config` to another web
server. For a load-balanced or replaceable-server installation, use the site's
existing shared RSA protected-configuration procedure or configure the machine
environment variable separately on every node. Coordinate this with the iMIS
hosting provider before changing an existing encryption provider.

Restart and validate
1. Recycle the iMIS application pool and restart the ASI Scheduler service if
   its DLL was replaced.
2. Open an existing WebToolz page and confirm it renders without an ASP.NET
   configuration, missing-assembly, or Telerik version error.
3. Open a form containing a WYSIWYG control and confirm that existing content
   loads, edits, saves, and renders correctly.
4. Run a known IQA-backed WebToolz feature and confirm it succeeds with the new
   secret.
5. Confirm the former secret is rejected and that the live `Services.asmx` help
   page/WSDL does not advertise `RestApiCall` or
   `RestApiCallWithUsernamePassword`.
6. Confirm all access is over HTTPS and review the application/event logs after
   the test.

Do not put the secret in screenshots, logs, test evidence, or support tickets.

Rollback
1. Restore the backed-up WebToolz files and `Web.config`.
2. Recycle the iMIS application pool and restart the scheduler if applicable.
3. Restore the former environment variable only if the previous approved
   version requires it. Do not restore or deploy a known legacy package that
   contains the retired unsafe service operations.
4. Record the failed validation step and relevant error text, with secrets
   removed, before contacting support.

For assistance, contact the Zentso support representative responsible for the
client deployment.

Protected-configuration reference
Microsoft documents the `-pef` encryption and `-pdf` decryption switches, the
`DataProtectionConfigurationProvider` name, and the machine-specific DPAPI
limitation in [Protecting Connection Strings and Other Configuration


iMIS EMS (2020/Enterprise)

Latest

WebToolz for iMIS EMS 20.3.231.432 (v4.51)

Release and Installatin Guide
WebToolz 4.51 - Release and Installation Guide
Release date: 28 August 2026  
Audience: iMIS administrators, implementation partners, and hosting providers
Release summary
WebToolz 4.51 targets iMIS 20.2.63 Q3 2026. The main assembly version is
`4.51.0.0` and it is compiled against ASI `20.3.231.432` and
Telerik.Web.UI `2026.3.812.462`.

Changes from WebToolz 4.50:
- Updated iMIS and Telerik dependencies for the Q3 2026 iMIS release.
- Updated the WYSIWYG form control to use the iMIS safe-content HTML editor.
- Aligned the supplied `System.Buffers` assembly with the version required by
  the WebToolz DNS client dependency.
- Removed the legacy `RestApiCall` and `RestApiCallWithUsernamePassword`
  web-service operations. Integrations using either operation must be replaced
  with an explicitly implemented, allowlisted integration before upgrading.
- Removed the embedded IQA service credential. Every environment must now have
  its own shared secret of at least 32 characters.

Important package requirement
Install only a newly built WebToolz 4.51 release package supplied by Zentso.
Do not install or redistribute a 4.48 or 4.49 deployment ZIP: those packages
predate the 4.51 security changes.

Before installation, confirm the supplied `Zengage.FlexibleFormz.dll` reports
file version `4.51.0.0`:
(Get-Item '.\Zengage.FlexibleFormz.dll').VersionInfo.FileVersion
Before installation
1. Confirm the target is iMIS 20.2.63 Q3 2026 and its installed
   `Telerik.Web.UI.dll` is version `2026.3.812.462`.
2. Schedule an outage or maintenance window. Editing `Web.config` recycles the
   iMIS application.
3. Back up the iMIS `Net` directory, the current WebToolz files, and the current
   `Web.config`. Record the existing WebToolz version.
4. Generate a different service secret for each environment. Do not send it in
   email, store it in the release package, commit it to source control, or reuse
   the former embedded credential.
5. If WebToolz is installed on more than one web server, repeat the file and
   configuration work on every node. See the web-farm note below before copying
   an encrypted configuration file between servers.

Generate the shared secret
Run this in Windows PowerShell on an administrator workstation or server. Store
the output in the organisation's approved password or secrets manager:

$secretBytes = New-Object byte[] 32
[Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($secretBytes)
[Convert]::ToBase64String($secretBytes)
The resulting Base64 value is 44 characters and satisfies the minimum length.
Install the files
The examples below assume the default iMIS path
`C:\Program Files (x86)\ASI\iMIS\Net`. Use the site's actual path if different.

1. Copy the supplied `Zengage\Flexible Formz` folder to
`Net\iParts\Zengage\Flexible Formz`.
2. Copy `Zengage.FlexibleFormz.dll` and the other supplied runtime DLLs to
`Net\bin`.
3. If the ASI Scheduler uses WebToolz, copy `Zengage.FlexibleFormz.dll` to the
scheduler `bin` directory as well.
4. Include the following file from the WebToolz release source:
`WebToolzDeployment\Zengage\WebServices\web.config`.
Update both service endpoint addresses in this file to use the target iMIS
server's local IP address and correct iMIS application path, then deploy it
to `Net\iParts\Zengage\WebServices\web.config`. Do not leave the IP address
from the release or another environment in place.
5. Copy the optional SAML and PLUS/API files only when those features are
licensed and already configured for the site.
6. For a new installation, import `FormToolz Content Type.xml` in Staff site via
RiSE > Maintenance > Content Types. Import the AFD IQA example only when AFD
is licensed. Existing installations normally retain their existing content
type and configuration.

Do not copy the Q4 2025 Telerik binding redirect into a Q3 2026 installation.
No WebToolz-specific Telerik redirect is required when the installed assembly is
version `2026.3.812.462`.
Configure the IQA service secret
The environment variable is preferred because it keeps the value out of
`Web.config`. Configure one of the following options, not both. If both are
present, the environment variable takes precedence.

Option A - machine environment variable (preferred)
Run an elevated Windows PowerShell session on each iMIS web server:
powershell
[Environment]::SetEnvironmentVariable(
    'WEBTOOLZ_SERVICES_SHARED_SECRET',
    '<paste-the-generated-secret>',
    'Machine')
Recycle the iMIS IIS application pool after setting or changing the variable so
the worker process receives the new value. Apply the same secret to every node
that belongs to the same iMIS site.

Option B - encrypted appSettings entry
Use this option where the hosting standard requires application settings in
`Web.config`. Add the following entry inside the existing `<appSettings>`
section, replacing the example value with the generated secret:
<add key="WebToolzServicesSharedSecret" value="<paste-the-generated-secret>" />
There must be exactly one entry with this key. Keep all existing iMIS settings
and do not replace the complete `<appSettings>` section.

Decrypt appSettings before editing
If `appSettings` is protected, its contents appear as `EncryptedData` and must
not be edited by hand. On the iMIS web server, open Command Prompt as
Administrator and run:

copy /Y "C:\Program Files (x86)\ASI\iMIS\Net\Web.config" "C:\Program Files (x86)\ASI\iMIS\Net\Web.config.pre-WebToolz-4.50.bak"
"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe" -pdf "appSettings" "C:\Program Files (x86)\ASI\iMIS\Net"
Edit `Web.config`, add or update `WebToolzServicesSharedSecret`, save it, and
then immediately protect the section again:

"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe" -pef "appSettings" "C:\Program Files (x86)\ASI\iMIS\Net" -prov "DataProtectionConfigurationProvider"
Confirm that `Web.config` now contains an encrypted `appSettings` section and
does not contain the plaintext secret. ASP.NET decrypts the section at runtime;
no application-code change is required.

If the site already uses another protected-configuration provider or an
external `appSettings` file, stop and follow the hosting provider's existing
procedure rather than changing the provider with the command above.

The `DataProtectionConfigurationProvider` output is protected for the machine
where it was created. Do not copy that encrypted `Web.config` to another web
server. For a load-balanced or replaceable-server installation, use the site's
existing shared RSA protected-configuration procedure or configure the machine
environment variable separately on every node. Coordinate this with the iMIS
hosting provider before changing an existing encryption provider.

Restart and validate
1. Recycle the iMIS application pool and restart the ASI Scheduler service if
   its DLL was replaced.
2. Open an existing WebToolz page and confirm it renders without an ASP.NET
   configuration, missing-assembly, or Telerik version error.
3. Open a form containing a WYSIWYG control and confirm that existing content
   loads, edits, saves, and renders correctly.
4. Run a known IQA-backed WebToolz feature and confirm it succeeds with the new
   secret.
5. Confirm the former secret is rejected and that the live `Services.asmx` help
   page/WSDL does not advertise `RestApiCall` or
   `RestApiCallWithUsernamePassword`.
6. Confirm all access is over HTTPS and review the application/event logs after
   the test.

Do not put the secret in screenshots, logs, test evidence, or support tickets.

Rollback
1. Restore the backed-up WebToolz files and `Web.config`.
2. Recycle the iMIS application pool and restart the scheduler if applicable.
3. Restore the former environment variable only if the previous approved
   version requires it. Do not restore or deploy a known legacy package that
   contains the retired unsafe service operations.
4. Record the failed validation step and relevant error text, with secrets
   removed, before contacting support.

For assistance, contact the Zentso support representative responsible for the
client deployment.

Protected-configuration reference
Microsoft documents the `-pef` encryption and `-pdf` decryption switches, the
`DataProtectionConfigurationProvider` name, and the machine-specific DPAPI
limitation in [Protecting Connection Strings and Other Configuration