Skip to main content
Skip table of contents

Windows Agent

The Signum Windows Agent provides an authenticated user access to signing certificates from the Signum Server and a connected HSM for use with signing tools that support working with Microsoft’s API for Key Storage Providers (KSP) and also the older Microsoft’s older Cryptographic Service Provider (CSP). Some examples would be Signtool, Jarsigner, Nuget Signer, VSIX signer, and more.

Prerequisites

  • Microsoft Windows 10 & 11 (64 bits)

  • Windows Server 2019 and later (64 bits)

  • Microsoft Visual C++ 14.29.30133 (The installer will prompt and download this automatically unless configured for a silent/quiet

  • SQL Compact - The installer will prompt and download this automatically where possible unless configured not to.

  • .NET 4.8

  • Administrator privileges during install

Agent Modes

CODE
$body

There are two different modes the Windows Agent can be installed in, an interactive mode with a User Interface called User Mode, and a CLI configuration called Server Mode. The mode must be included at install by setting either AGENTMODE=”USER” or AGENTMODE=”SERVER” defined in the installation notes below.

Installation

To install the Windows Agent, a.bat file setup with initial configuration parameters needs to be run targeting or in the same directory as the Signum Agent .msi installer. With the basic format being:

CODE
configuration_parameter_key="some_value" for example AuthMode="LocalUsers"

Below is an example .bat file that installs a particular version of the Signum Windows Agent .msi in USER mode with an interactive UI configured to use a SAML provider for authentication.

CODE
msiexec /i kf-agent-x64-4.30.1-456b2f45-MS-WO_Trust.msi ^
RTPRIMARY="Deployment URL" RTSECONDARY="Deployment URL" ^
CLIENTID="The ClientID from the SaaS Portal" ^
AuthMode="SAML2" AGENTMODE="USER" DefaultDomain="somedomain.com" ^
Language="en-US" ^
echo Exit Code is %errorlevel%

Installation Parameters

Below are the available parameters to pass during installation. Note that some of these parameters are for other use cases with prior versions of Signum.

Frequently Used Parameters

Parameter

Default Value

Description

Required

PrimaryServer

Primary Signum Server URL (without https://)

(tick)

SecondaryServer

For Signum, copy the information used in the PrimaryServer argument.

This feature is for a legacy model of backup server and will be removed as a required argument from future versions of the agent.

(tick)

ClientID

Unique value for the Signum Instance. This can be obtained from Keyfactor during deployment.

(tick)

DefaultDomain

If connecting users coming from SAML or Oauth domains this needs to be set to the name of the domain.

If AgentMode is set to SERVER, only LocalUsers is supported.

(error) Optional for LocalUsers

(tick) Required for SAML and OAuth

AuthMode

The Agent Authentication Mode. What type of Domain will customers be authenticating from.

Valid options for Signum are:

  • LocalUsers

  • SAML2

  • OAuth2

(tick)

ONLY_KSP

0

Optional setting to only use Microsoft’s KSP instead of both the KSP and CSP.

This setting can be useful if you want the most performance out of the agent and are not trying to use older applications.

To change this needs to be set at install time.

(error)

Language

Agent’s language.

Valid options are:

  • en-US (english)

  • en-ES (spanish)

(error)

AGENTMODE

USER

If the Agent will run in User-Interface mode (i.e. with a GUI) or in Server mode with no user interface.

Valid options are:

  • USER

  • SERVER

(error)

NO_FIREFOX 

This is a legacy feature that is being deprecated for Signum. Removed in Signum 4.30.1

For Signum, this value should be set to 1.

(error)

NO_CHROME 

This is a legacy feature that is being deprecated for Signum. Removed in Signum 4.30.1

For Signum, this value should be set to 1.

(error)

NO_IEXPLORER 

This is a legacy feature that is being deprecated for Signum. Removed in Signum 4.30.1

For Signum, this value should be set to 1.

(error)

NO_EDGE 

This is a legacy feature that is being deprecated for Signum. Removed in Signum 4.30.1

For Signum, this value should be set to 1.

(error)

REQUEST_LOGIN_AT_STARTUP

0

If enabled by being set to 1. This will cause the agent to automatically open the login UI or IDP webpage on reboots. Default behavior is users need to click “login” in the Tray Icon.

(error)

Additional Parameters

Parameter

Default Value

Description

Required

HIDE_TRAYICON

0

0 - Tray Icon is visible

1 - Tray Icon is not visible

(tick)

DISABLE_NOTIFICATIONS

0

0 - Notifications are shown

1 - No notifications are shown ( If HIDE_TRAYICON is set to 1, then this parameter is also set to 1.)

(tick)

Timeout seconds 

31 

Seconds of timeout after which the agent considers that the server is not available. 

(error)

START_DELAYED 

Specifies the operating mode of the installed service. If set to delayed start, the agent will attempt to be the last process to start on boot.

0 - Automatic start 

1- Delayed start 

(error)

PIN_EXPIRATION 

Number of seconds before the user must re-enter a PIN. This only applies to a single Cryptographic session.

(error)  

NO_SQLCOMPACT 

Some signing tools are able to use both KSP and PKCS11 in Windows. SQL Compact needs to be installed to enable this PKCS11 functionality.

0 - Installs the SQL Server Compact  

1- Does not install SQL Server Compact 

(error)

NO_REDIST 

0 - Installs the C++ redistributables 

1- Does not install C++ redistributables 

(error)

WEBPROXY_URI 

Can be used to optionally configure a proxy. The proxy must be transparent with no authentication in the format of a URL.

(error)

Optional Registry Settings

These properties cannot be passed at installation but can be set directly in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Evolium\Redtrust. By default, the agent can dynamically change these to avoid conflicts with other running processes.

Parameter

Default Service

Description

Required

TCP_PORT

51598

CSP module and RTTrayApp use this port to communicate to the local service. If the default port is unavailable, another one can be configured. Only set if a specific port is needed otherwise it will be assigned automatically.

(error) 

KSP_WEBAPI_PORT

51600

KSP module uses this port to communicate to the local service. If the default port is unavailable, another one can be configured. Only set if a specific port is needed otherwise it will be assigned automatically.

(error)

Editing Settings

Once the Agent has been installed many of the parameter settings can be changed by editing the registry at:

CODE
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Evolium\Redtrust

After making changes, restart the System service that is running “RTService”. It may also be necessary to quiet and relaunch the Tray Application, this can be done by ending the “RTTrayApp” process in Task Manager and then relaunching by running the “RTTrayApp” found in C:\Program Files\KeyFactor.

Settings for the KSP and between USER/SERVER modes need to be set at installation time and cannot be updated later to new values.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.