Users with Windows servers may sometimes receive an "untrusted connection" error, when connecting to their websites, despite the fact that a PKCS#7 certificate with the full chain was imported on the server. The issue is more frequent on mobile devices, rather than on desktop machines, and occurs most commonly with Sectigo certificates.
When checking the certificate installation in an online checker, you will see that the certificate is returned with one intermediate.
To understand what causes the issue and how to overcome it, we will provide a better understanding on how Windows servers work with SSL certificates. First, remember that Windows servers do not return root certificates during SSL handshake and they build up certificate chains using the shortest way they can find.
Let us investigate this issue using the example of a Sectigo PositiveSSL certificate. PositiveSSL (and other Sectigo certificates) has two variants of CA chain. One ends up with SHA-1 root certificate and the other is completed by a newer SHA-2 root, which is not included in trusted stores of most mobile devices and might be missing in old versions of desktop browsers.
After certificate installation in Windows, your server may contain self-signed Sectigo Public Server Authentication Root R46 root certificate. Some older devices may not trust this self-signed certificate, and the workaround to this issue is to uninstall the self-signed Sectigo Public Server Authentication Root R46 root and install the cross-signed Sectigo Public Server Authentication Root R46xUSERTrust instead. This should complete the certificate chain properly on both new and old devices. However, Windows servers prefer using shorter certificate chains, making cross-signed certificate unusable. In order to mitigate this, the self-signed root Sectigo Public Server Authentication Root R46 certificate has to be disabled.
You can use one of the following methods to fix the issue with the server certificates:
Follow the steps below to disable the unnecessary root certificate:








This should resolve the issue with the certificate chain returned by the Windows server and remove all the warnings in browser.
Another workaround is to ensure maximum compatibility (i.e., your certificate works on modern and legacy clients), it's often better to force use of the cross-signed chain and avoid the self-signed root. One way to do this is to tell Windows that the self-signed Sectigo roots are untrusted/disallowed.
The .reg file provided by Sectigo automates exactly that. It moves the self-signed R46/E46 roots into the Disallowed store in the Windows certificate registry, preventing Windows/IIS from ending the chain at those roots, so the cross-signed chain will be selected instead.
Steps for using the .reg file

Sectigo also provides a “IISFix-MoveSectigoSelfSignedRoots-Restore.reg” .reg file, which reverts the change.
You can download the necessary .reg files from Sectigo website directly as well.
If the file is downloaded with .txt extension and UTF-8 encoding instead of .reg, it is required to perform the following steps:
Option 1:
Simply rename the file and remove the .txt extension at the end, replacing it with .reg (e.g., IISFix-MoveSectigoSelfSignedRoots-Disallowed.reg.txt > IISFix-MoveSectigoSelfSignedRoots-Disallowed.reg)
Option 2:

In some cases, you may also need to change the file name (for example, deleting and typing a symbol again).

Need help? We're always here for you.