Major Release 12.0 Notes

June 2024

Tip:  Keyfactor recommends that you check the Keyfactor GitHub Site (https://keyfactor.github.io/integrations-catalog/) with each release that you install to check if you will need to download the updated orchestrators to work with that version of Keyfactor Command.

Please refer to Keyfactor Command Upgrading for important information about the upgrade process. For a complete list of the items included in this release, see Release Note Details v12.0.

Highlights
Changes & Improvements
  • Dashboard

    • Certificate collections that are configured to display on the dashboard Collection panel may now be sorted. Click the panel Settings icon to edit. For more information, see Dashboard: Collections in the Keyfactor Command Reference Guide.
    • The dashboard Collection panel has the following display changes:
      • Collection names under each bar are slanted 45 degrees.
      • Data labels above bars are formatted to show three significant figures.
      • When highlighting a collection's bar, it shows the name of the collection as well as the exact certificate count.
  • Certificate Search and Collections

  • Enrollment

  • Alerts

    The Test function on the Expiration, Pending Certificate Request, SSH Key Rotation, and Revocation Monitoring Alert pages has been updated to a new format. See the individual operation pages for these alerts for more information.

  • Certificate Authorities

    • The Certificate Authorities page has been redesigned to utilize sliding panel functionality and add the new feature functions CA Connectors and Task Queue Connection. Some certificate authority fields have been moved to different tabs and many new features and functionality have been added. See Certificate Authorities.

    • Connections to EJBCA CAs can now be made using OAuth for authentication.

    • Authentication information for CAs can now be stored in the Keyfactor Command secrets table, in a local PAM solution, or in a remote PAM solution for both DCOM and HTTPS type CAs. Specifically, for DCOM CAs, the password set with the Use Explicit Credentials option can be stored in one of these three locations. For HTTPS CAs using OAuth authentication, the Client Secret can be stored in one of these three locations. For HTTPS CAs using client certificate authentication, PAM is not supported.

  • Certificate Stores

    • Certificate stores and certificate store containers can now be scheduled for inventory with the following options: Off, Immediate, Interval, Daily, Weekly, Exactly Once. For more information, see Certificate Store Container Operations in the Keyfactor Command Reference Guide.

    • The Container field in the Add/Edit Certificate Store dialog and the Manage Certificate Stores dialog (approving a discovered certificate store) is now a search select rather than a dropdown, removing the previous limit of 50 containers imposed by the dropdown format. Begin typing a value in the field to narrow results.

    • A user may send a Certificate Store Reenrollment job request to a given orchestrator even when there are required metadata fields defined. Although the certificate store reenrollment jobs do not support the entering of metadata fields, the job will continue and will warn the user that they will need to manually fill in the missing metadata fields. Required metadata fields with a default value will be set automatically when the certificate reenrollment job completes.

    • On approving a discovered certificate store, an inventory schedule may now be added to the certificate store in the Manage Certificate Stores dialog from the Discover tab in Certificate Stores. This eliminates the step of needing to first approve the certificate store on the Discover tab and then locate the approved store on the Certificate Stores tab, edit it, and set an inventory schedule for it there.

    • The Discover tab of the Certificate Stores page now includes a search feature.

  • Orchestrator Management

    • A new Capabilities tab has been added to the Orchestrator Management details view displaying a list of job types that are correlated to a particular orchestrator's capabilities. The list includes the short name (e.g. RFJKS), the longer name (e.g. RFJKS Inventory), and the job type (e.g. Inventory).

  • Keyfactor Universal Orchestrator

    • Logging in the Keyfactor Universal Orchestrator has been updated to return further data from Keyfactor Command as to the state of the job. The new logs have the following format:

      The '[NAME OF JOB]' job with capability '[CAPABILITY]' and Id '[ORCHESTRATOR ID]' under session '[SESSION ID]' completed, sent a '[STATUS]' status and a job completion message of "[JOB COMPLETION MESSAGE]" to the server, received completion status of [JOB COMPLETION STATUS] from the server.

      For example:

      2024-06-13 18:39:01.7347 4B6EC674-1A02-425F-B11B-57355FB8D9E9 550462 Keyfactor.Orchestrators.JobExecutors.OrchestratorJobExecutor [Info] - The 'RFJKS Inventory' job with capability 'CertStores.RFJKS.Inventory' and Id '4b6ec674-1a02-425f-b11b-57355fb8d9e9' under session 'b514334c-7df1-4f92-9d65-bae07ecee376' completed, sent a 'Failure' status and a job completion message of "Site /opt/jks/mystore.jks on server appsrvr162.keyexample.com:Error attempting SCP file transfer from appsrvr162.keyexample.com using login kyfuser and connection method password. Please contact your company's system administrator to verify connection and permission settings. scp: /opt/jks/mystore123.jks: No such file or directory" to the server, received completion status of 'Success' from the server.
    • Configuration for orchestrator client certificate authentication has moved to the appsettings.json file for the web agent services application (see Keyfactor Command Web Agent Services appsetting.json File). This was done because this information is needed to start the web pipeline, so must be available even if SQL is unavailable when the application starts. Related to this, errors indicating a null value is returned for properties UniqueClaimType and FallbackUniqueClaimType in the log have been corrected. As a result of this change, the Always Use Certificate from Header application setting is no longer available in application settings.
  • Certificate Metadata

    • Tooltips (help icons) have been added on the certificate metadata definition page add/edit dialog for the hint and description fields to clarify the purposes of these fields. When the hint is displayed on the enrollment and certificate details pages, it now displays in italics within parentheses to the right of the metadata field name. A tooltip has been added to the right of the hint on the enrollment and certificate details pages to display the metadata description.
    • A new Case-Sensitive Validation option has been added for metadata fields of type String. This option is only active when a value has been added in the RegEx Validation field. When toggled on, if the user's entry for the metadata field does not match the expected case, the value from the RegEx Message field will display. This is broken out from the rest of the regular expression for clarity and to allow the case sensitivity setting to be viewed in the regular expression grid.
  • Identity Providers

    • OAuth identity providers are now associated with a permission set. In several interface in the Keyfactor Command Management Portal and Keyfactor API where identity providers are referenced, this now needs to be taken into consideration. Identity provider access (for example, availability in dropdowns) is determined by the permissions of the user accessing the Management Portal or Keyfactor API and the permission set on the identity provider(s). The user must be assigned a security role that has been granted the Identity Providers > Read (and Modify for edits) permission and that security role must have the same permission set applied to it as has been applied to the identity provider. For more information about permission sets, see Permission Sets. Identity providers created through the Keyfactor Command Configuration Wizard are associated with the Global permission set.

  • Security Roles and Claims

    • On the Security Roles and Claims page, the built-in Administrator role will accept the addition of claims in the Management Portal, though other aspects of this role cannot be edited.
  • Logging and Auditing

    • The Keyfactor API correlation token has been added to Keyfactor API response header (X-Keyfactor-Correlation-Id). This correlation ID also now appears in error messages that appear in the Management Portal to aid in tracking requests in the logs. For more information about correlation tokens in logs, see Debug Logging and Error Messages in the Keyfactor Command Reference Guide.

    • The Keyfactor Universal Orchestrator has been updated to include failure messages in the log even if the orchestrator was able to report the problem back to Keyfactor Command. This will allow for greater troubleshooting and visibility of failures when doing log monitoring on orchestrator logs.

    • The purge audit log job had the following changes:

      • The Purge Audit Job History timer service job will delete records based on a weekly retention period (formerly years).

      • The Purge Audit Job History timer service job will also delete records in batches of a configurable record sizes, set with a new application settings on the Audit tab (Purge Audit Log Batch Size).

      • Persisted categories for audit logs additionally include SecurityClaims, SecurityRoles, and IdentityProviders.

      During an upgrade, the configuration wizard will no longer populate the value of the audit retention period on the Audit Configuration tab to allow users of previous versions to define the week interval of their choice. Configuration files saved after this change will populate with the saved value.

  • .NET Updates

    • Release 12.0 has been updated to require the ASP.NET Core 8.0 Hosting Bundle for installation. For more information, see System Requirements.

  • Documentation.

    • Keyfactor provides the option of two sets of documentation—the On-Premises Documentation Suite and the Managed Services Documentation Suite—to link to when accessing the documentation from the Keyfactor CommandManagement Portal help links (from the help icon at the top of the Management Portal or from the help icon on individual screens). The Application Settings: On-Prem Documentation application setting (see Application Settings: Console Tab) determines which documentation set is accessed.

Fixes
  • An error message of “Cannot read property ‘ServerName’ of undefined” that appeared in some cases when you attempted to Edit Access for select SSH users has been corrected.
  • An issue has been corrected where revocation monitoring alerts using the legacy alerting system would send alerts eve if the Email Reminder Warn option was disabled.
  • Duplicate log entries created under some conditions during expiration alert generation have been removed.
  • CSR enrollment can now handle CSRs with template information encoded as a UTF8 string, such as those generated by Google SCEP.
  • One-click renewal is now case insensitive for certificate template and CA forestClosed An Active Directory forest (AD forest) is the top most logical container in an Active Directory configuration that contains domains, and objects such as users and computers. comparison.
  • Keyfactor Command integration with EJBCA CAs now continues to function correctly even if the EJBCA instance has an SSH CA. Keyfactor Command does not support integration with SSH CAs, but now functions correctly with standard CAs in the presence of SSH CAs.
  • On the Certificate Stores page, users with limited permissions to certificates can now click the Query Certificate Store button and get a friendly message if they have insufficient permissions to view the associated certificates rather than an unexpected error.

  • The SAN type of URI, supported by EJBCA, is now supported by Keyfactor Command to provide parity between the supported SAN types for EJBCA and Keyfactor Command. The supported SAN types in Keyfactor Command have been standardized and include more types than previously. Only a few of the types are available through the Management Portal, but all are available through the Keyfactor API. For more information, see the SANs input parameterClosed A parameter or argument is a value that is passed into a function in an application. to the POST /Enrollment/PFX endpointClosed An endpoint is a URL that enables the API to gain access to resources on a server. (POST Enrollment PFX) in the Keyfactor API Reference Guide.
  • The Keyfactor Command Service job to add certificates that have entered or left a collection to a temporary table to support workflows of types Certificate Entered Collection and Certificate Left Collection has been streamlined to make it more robust in scenarios with a large number of collections and certificates and to only build the temporary table if there are workflows of these types enabled requiring it.
  • Certificate requests that require manager approval at the CA level and have SANs now correctly display the SANs on the pending certificate request details and no longer show warning messages in the log similar to:

    [Warn] - Ignoring unknown extension based SAN with value '192.168.9.9'
Deprecation & Removals
  • The prescript and postscript functionality of the Keyfactor Universal Orchestrator has been replaced by other functionality in Keyfactor Command such as that provided by Keyfactor Command workflows. As a result, prescript and postscript functionality has been removed.

  • Agent Auto-Registration in the Keyfactor Command Management Portal has been deprecated and will be removed in the next major release. Custom auto-registration handlers will still be supported.
  • The Test All action for revocation monitoring, expiration, and SSH key rotation alerts has been removed. This was necessary to support the migration to using workflows for these monitoring alerts.
  • The following endpoints have been removed from the Keyfactor API: GET /CertificateStores/Server, POST /CertificateStores/Server, PUT /CertificateStores/Server
  • Beginning with release 12.0 of Keyfactor Command, Keyfactor product documentation will be published in HTML format only. PDFs versions of the documentation will no longer be published.
  • Java Agent

    Important:  The Keyfactor Java Agent has been deprecated as of Keyfactor Command version 12. Customers must migrate to the Keyfactor Universal Orchestrator with the Remote File custom extension publicly available at:

    For more information about using custom extensions with the Keyfactor Universal Orchestrator, see Installing Custom-Built Extensions in the Keyfactor Orchestrators Installation and Configuration Guide.

  • Windows Orchestrator

    Important:  The Keyfactor Windows Orchestrator has been deprecated as of Keyfactor Command version 12. Customers must migrate to the Keyfactor Universal Orchestrator, with the appropriate custom extension, publicly available at:

    For more information about using custom extensions with the Keyfactor Universal Orchestrator, see Installing Custom-Built Extensions in the Keyfactor Orchestrators Installation and Configuration Guide.

  • Mac Auto-Enroll Agent

    Important:  The Keyfactor Mac Auto-Enroll Agent has been deprecated as of Keyfactor Command version 11. Customers needing an auto-enroll solution for Mac should contact their Keyfactor Customer Success Manager.
  • Classic API

    Important:  The Classic API, also known as the CMS API, was removed in Keyfactor Command version 11. All uses of the Classic API should be migrated to the Keyfactor API prior to upgrading to Keyfactor Command version 11 or later.
Known Issues
  • The Include Chain option for PFX enrollment in the Management Portal and Keyfactor API is not honored when a format of PEM is selected for the certificate. Likewise, the Include Chain option for the Keyfactor API CSR enrollment endpoint is not honored. The latter affects the functionality of the Keyfactor ACME server with newer versions of Certbot that require the full chain to be returned with the response. This will be corrected in a future release.

  • On an upgrade, all existing OAuth identity providers are assigned to the Global permission set.
  • If an enrollment request through Keyfactor Command fails, the message returned to the user is vague and does not provide guidance on troubleshooting the issue. In the Keyfactor Command Management Portal, the message may look something like:

    Unable to enroll for certificate. Step 'Keyfactor-Enroll' failed: Certificate with ID 165 was not found (Correlation Id: 3a59a640-a7a5-469d-8062-639a12a24961)

    To troubleshoot this type of error, review the Keyfactor Command logs, beginning with the KeyfactorAPI log. Look for references to the correlation ID found in the error. This is where you can find any error messages returned from the CA, for example, that might indicate the nature of the problem.

  • If you're planning to use OAuth authentication, you presently must install the Active Directory Module for Windows PowerShell, even though OAuth does not require it, because there is a check for it in the installer. If you don't have it installed, you get the below error during installation.

    Remote Server Administration Tools' Active Directory PowerShell Module is not installed and is required to support the selected web applications. Please install Remote Server Administration Tools and click the 'Retry' button or restart the configuration process.
API Endpoint Change Log

Please review the information in the API Change Log for this release carefully if you have implemented any integration using these endpoints: API Change Log v12.0.