Upgrading
Most Keyfactor Command upgrades are brief with a minimum of changes to existing user accounts, groups, CA A certificate authority (CA) is an entity that issues digital certificates. Within Keyfactor Command, a CA may be a Microsoft CA or a Keyfactor gateway to a cloud-based or remote CA. templates, firewall settings, etc. Most prerequisites have not materially changed from previous versions and the current version can generally be installed using the same hardware and existing instances of the supporting software. The upgrade process is often completed within three to four hours.
Before upgrading, please be sure you have reviewed and addressed the important preparation steps (see Preparing).

Before upgrading to a major version, Keyfactor recommends first upgrading to the final incremental version of the previous major version—completing both the software installation and configuration with the configuration wizard—for the optimal upgrade experience. For example, if you are currently on version 10.4 and want to upgrade to version 12.0 or later, you should upgrade first to version 10.5 (the final incremental version of 10.x) before upgrading. Contact your Client Success Manager for more information.
Please see the latest release notes (see Keyfactor Command Release Notes) if you are using any custom scripts that leverage the Keyfactor API An API is a set of functions to allow creation of applications. Keyfactor offers the Keyfactor API, which allows third-party software to integrate with the advanced certificate enrollment and management features of Keyfactor Command..
The overall task flow consists of the following steps.
Upgrade Keyfactor Command on Windows Under IIS
Once you’ve confirmed that preparation is complete, you may move forward with the upgrade. You may or may not choose to manually upgrade the database ahead of time. If you have previously encountered upgrade issues or want to test the database upgrade step without risking downtime, this may be a good option for you. You can run the database upgrade tool on a temporary restored copy of the database without interrupting operations to confirm that the database upgrade will succeed and then upgrade the production database immediately before upgrading the server software.
Optional: Separately Upgrade the Database
The command-line Database Upgrade Tool can be used ahead of the Keyfactor Command software installation to bring the database up to the current version. This can be used to test database upgrades and resolve any issues before going forward with a full Keyfactor Command upgrade. For more information, see Using the Database Upgrade Tool.
Upgrade of the Server Software
In most cases the Keyfactor Command server software can be installed over the existing software installation without uninstalling the previous version. Install the software retaining the same installation location (see Installing). In the configuration wizard, populate the fields while referring to your configuration file open in a text editor (see Configuration File). Use the existing IIS application pool(s).
The workaround involved creating files CertSrv.exe.config and MMC.exe.config in C:\Windows\System32 on any certificate authority A certificate authority (CA) is an entity that issues digital certificates. Within Keyfactor Command, a CA may be a Microsoft CA or a Keyfactor gateway to a cloud-based or remote CA. on which you encountered this issue.
With the release of version 11.0 of Keyfactor Command, this workaround needs to be reversed. If the workaround is not reversed, you will encounter errors such as the following on enrollment Certificate enrollment refers to the process by which a user requests a digital certificate. The user must submit the request to a certificate authority (CA). attempts:
To reverse the workaround, on the affected certificate authority:
Rename C:\Windows\System32\CertSrv.exe.config to an alternate name or remove it from the System32 directory.
Rename C:\Windows\System32\MMC.exe.config to an alternate name or remove it from the System32 directory.
Restart the CA services.
Confirm that certificate enrollment is working as desired and that the policy handler(s) in place are working as desired.
Replace or Re-Update Customized Files
Files such as the nlog.config file or customized files for third-party PAM integration (e.g. web.config customizations for CyberArk) may have slight changes in the latest version as compared to the previous version, so you should not just copy your old, customized versions of those files over the current stock versions of these files. You will need to compare the files and make your customizations in the current versions of the files.
Upgrade Keyfactor Command in Containers under Kubernetes
Once you’ve confirmed that preparation is complete, you may move forward with the upgrade. Upgrading Keyfactor Command in containers under Kubernetes is as simple as uninstalling and reinstalling using the helm chart with your custom values file (see Install Keyfactor Command in Containers Under Kubernetes). For example:
Migrate a Keyfactor Command Installation on Windows under IIS to Containers under Kubernetes
You may wish to work with a Keyfactor representative on a migration from an installation on Windows under IIS to an installation in containers under Kubernetes depending on the complexity of your environment, but if your environment is fairly straight-forward, you should have success without this. The basic process is:
-
Prepare as for an upgrade (see Preparing), being sure to review all the components of your Windows installation and determine the correct equivalent configuration under Kubernetes. For example, do you have a custom logo in the Management Portal? Are you using any third-party PAM extensions installed on the Keyfactor Command server? Are you using application-level encryption? Are you using features that aren’t supported under Kubernetes (SSH
The SSH (secure shell) protocol provides for secure connections between computers. It provides several options for authentication, including public key, and protects the communications with strong encryption., Active Directory as an identity provider)?
-
If you’re using Microsoft CAs, prepare to install the CA Connector
The Keyfactor CA Connector is installed in the customer environment to provide a connection between a CA and Keyfactor Command when a direct connection is not possible. It is supported on both Windows and Linux and has versions for Microsoft (Windows only) or EJBCA CAs. client to support communications with these CAs.
-
If your SQL database uses application-level encryption, either decrypt the data or decrypt and re-encrypt using a raw AES key (see Application-Level Encryption). This is necessary because the certificate-based encryption supported on Windows is not supported under Kubernetes. Determine a methodology for application-level encryption under Kubernetes going forward. If you choose to re-encrypt using a raw AES key, you will need to upgrade your database on Windows before migrating to Kubernetes since this features is supported only in version 24.4 and later.
-
Install as per Install Keyfactor Command in Containers Under Kubernetes referencing your existing database.
-
Continue on to the post-uprade steps.
Upgrade Additional Components
Review the following additional components that may be affected by your Keyfactor Command upgrade. These may need to be upgraded or migrated as well.
Upgrade the Keyfactor Universal Orchestrator
In many cases the Keyfactor Universal Orchestrator The Keyfactor Universal Orchestrator, one of Keyfactor's suite of orchestrators, is used to interact with servers and devices for certificate management, run SSL discovery and management tasks, and manage synchronization of certificate authorities in remote forests. With the addition of custom extensions, it can provide certificate management capabilities on a variety of platforms and devices (e.g. Amazon Web Services (AWS) resources, Citrix\NetScaler devices, F5 devices, IIS stores, JKS keystores, PEM stores, and PKCS#12 stores) and execute tasks outside the standard list of certificate management functions. It runs on either Windows or Linux servers or Linux containers. can be installed over the existing installation without uninstalling the previous version. For specific upgrade guidance, see Upgrading the Universal Orchestrator.
Update from Windows Orchestrators
Support for the Keyfactor Windows Orchestrator was deprecated in Keyfactor Command release 11.0. All uses of the Keyfactor Windows Orchestrator should be updated to the Keyfactor Universal Orchestrator. The Keyfactor Universal Orchestrator replaces the Keyfactor Windows Orchestrator and runs on both Windows or Linux servers. The following functions that were part of the Keyfactor Windows Orchestrator are supported in the Keyfactor Universal Orchestrator with custom extensions:
- Interact with F5 devices for certificate management
- Interact with NetScaler devices for certificate management
- Interact with Amazon Web Services (AWS) resources for certificate management
- Interact with Windows certificate stores and IIS
For more information about using custom extensions with the Keyfactor Universal Orchestrator, see Installing Custom-Built Extensions.
If you're upgrading from a version of Keyfactor Command prior to 8.0, you will need to update any Windows Orchestrators (a.k.a. Windows Agents) that are used for SSL TLS (Transport Layer Security) and its predecessor SSL (Secure Sockets Layer) are protocols for establishing authenticated and encrypted links between networked computers. scanning to support the current scanning architecture. Install and configure the Keyfactor Universal Orchestrator software (see Upgrading the Universal Orchestrator).

Keyfactor CA Policy Module
To upgrade a Keyfactor CA Policy Module:
- Make a note of all your existing policy module configuration, including which policy handlers are enabled and what configurations are set within each handler. During the upgrade process, you will uninstall the policy module, which will remove your configuration. The upgrade script should successfully restore the configuration as part of the upgrade process, but you will want to have a complete record of the configuration as a backup.
- On the Keyfactor CA Policy Module server, open a PowerShell window using the “Run as administrator” option.
-
In the PowerShell window, change to the directory in which you placed the upgrade script included with the latest version of the Keyfactor CA Policy Module and execute it in archive mode. For example:
.\Keyfactor-CA-Modules-Upgrade-Script.ps1 -Mode archive -InformationAction Continue -ErrorAction StopNote: This step is creating a backup of your policy module configuration before you uninstall the old policy module. It will create an output file, Keyfactor-CA-Policy.dat, in the current directory.Tip: Additional options are available in the upgrade script and can be viewed using the -full switch with Get-Help. For example:Get-Help .\Keyfactor-CA-Modules-Upgrade-Script.ps1 -full - Unload the existing policy module in the CA MMC, and close the MMC.
- Uninstall the existing policy module.
-
Install the latest version of the Keyfactor CA Policy Module but do not configure it (see Installing the Keyfactor CA Policy Module Handlers in the Keyfactor Command Server Installation Guide). Be sure to install all the same policy handlers that were installed previously.
Execute the upgrade script included with the latest version of the Keyfactor CA Policy Module again, but this time in restore mode. For example:
.\Keyfactor-CA-Modules-Upgrade-Script.ps1 -Mode restore -InformationAction Continue -ErrorAction StopNote: This step takes the backup of your policy module configuration from the first run of the upgrade script and restores the information to the correct locations so that you will not need to re-configure the policy module. Be sure that the output file from the first run of the upgrade script, Keyfactor-CA-Policy.dat, is in the current directory. - Open the CA MMC and load the Keyfactor CA Policy Module (see Installing the Keyfactor CA Policy Module Handlers in the Keyfactor Command Server Installation Guide).
- Open the Properties for the policy module and, if you've received a new license, install the new license on the License tab. On the Custom Handlers tab, review all the configuration to confirm that it has been correctly restored by the upgrade script.
EJBCA CA Gateway
If you're using an EJBCA gateway and wish to make use of the native support for EJBCA CAs in more recent versions of Keyfactor Command, you will need to follow the EJBCA gateway upgrade process to unlink the EJBCA certificates in your Keyfactor Command database from your EJBCA gateway CA to enable them to be relinked to a native CA configured in Keyfactor Command. For more information, contact Keyfactor support.
Other CA Gateways
In most cases, the Keyfactor gateway software can be installed over the existing software installation without uninstalling the previous version. Review the configuration for your gateway, and then install and configure the software as per the Keyfactor gateway guide for the particular gateway, retaining the same installation location. The gateway configuration wizard has significantly changed in recent releases for many of the gateways, which may require modification to your configuration.
Post-Install Configuration and Testing
The bulk of the time upgrading will be spent verifying that all functions and configurations have correctly carried over and the upgraded instance is performing correctly.
Was this page helpful? Provide Feedback