Install the Universal Orchestrator in a Linux Container

When the Keyfactor Universal OrchestratorClosed 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. runs in a Linux container, it is typically installed in a containerization solution that sits on top of a Linux server or set of servers. There are a wide variety of containerization solutions for multiple operating systems. This document covers deploying the container to either Docker or Kubernetes on Linux.

The artifactory for the Universal OrchestratorClosed Keyfactor orchestrators perform a variety of functions, including managing certificate stores and SSH key stores. images can be found here:

keyfactor.jfrog.io/con-develop-us-engineering/command/

Check with your Keyfactor Customer Success Manager for credentials.

Two different images are available, depending on the functionality you are looking for:

Table 825: Linux Container Parameters

Parameter

Description

COMMAND_AGENTS_URL

Required. The URL of the Orchestrators API on the Keyfactor Command server. For example:

https://keyfactor.keyexample.com/KeyfactorAgents
USERNAME

Required*. The username for service account used to connect to the Keyfactor Command server. This is the Keyfactor Command Connect Service Account described in Create Service Accounts for the Universal Orchestrator if you’re using Active Directory as an identity provider. The orchestrator uses Basic Authentication to authenticate to Keyfactor Command.

This parameter is required if you’re using Active Directory as an identity provider.

PASSWORD

Required*. The password for the Keyfactor Command Connect Service Account if you’re using Active Directory as an identity provider.

This parameter is required if you’re using Active Directory as an identity provider.

ORCHESTRATOR_NAME

The name the orchestrator uses to register itself with Keyfactor Command. By default, the container hostname is used, which is not ideal as this will create a new orchestrator entry with every container start. Although this parameter is not strictly required, Keyfactor strongly recommends using it.

If you choose to uninstall and reinstall the orchestrator (using compose down), it is important to use the same orchestrator name for subsequent implementations so that Keyfactor Command will recognize the orchestrator when it is started again using compose up.

LOG_LEVEL The logging level for the orchestrator. The default value is Info. Possible values are the same as those described in Configure Logging for the Universal Orchestrator.

AppSettings__CheckServerCertificate

Revocation

A Boolean that indicates whether the revocation status (CRL) of the SSL certificate on the Keyfactor Command server should be checked when connecting to Keyfactor Command (true) or not (false). The default is true (CRL checking will be done).
BEARER_TOKEN_URL

Required*. The URL of the token endpoint for your Keyfactor Identity Provider instance. For example:

https://my-keyidp-server.keyexample.com/realms/Keyfactor/protocol/openid-connect/token

For Keyfactor Identity Provider, this is included among the information that can be found on the OpenID Endpoint Configuration page, a link to which can be found on the Realm Settings page (see Configuring Keyfactor Identity Provider and Collecting Data for the Keyfactor Command Installation).

This parameter is required if you’re using Keyfactor Identity Provider as an identity provider.

CLIENTID

Required*. For implementations using Keyfactor Identity Provider as an identity provider, the ID of the Keyfactor Identity Provider client that should be used to authenticate the session (see Create Service Accounts for the Universal Orchestrator).

This parameter is required if you’re using Keyfactor Identity Provider as an identity provider.

CLIENT_SECRET

Required*. For implementations using Keyfactor Identity Provider as an identity provider, the secret of the Keyfactor Identity Provider client that should be used to authenticate the session.

This parameter is required if you’re using Keyfactor Identity Provider as an identity provider.

TOKEN_LIFETIME

For implementations using Keyfactor Identity Provider as an identity provider, the number of seconds for which the bearer token is valid. This should be set to the same value as the Keyfactor CommandCookie Expiration. For example, if the Keyfactor CommandCookie Expiration is 5 minutes, the TOKEN_LIFETIMEshould be 300 seconds. The default value is 60.

The Cookie Expiration value determines the length of time the authentication cookie is considered valid. After half of the setting's duration, Keyfactor Command will attempt to use a refresh token to update the cookie. If this fails, the orchestrator’s session will be terminated.

Note:  The Keyfactor Universal Orchestrator running in a container does not support client certificate authentication.
Tip:  Once the installation of the orchestrator is complete, you need to use the Keyfactor CommandManagement Portal to approve the orchestrator and configure certificate stores or SSL jobs: