Key management
Managed Keys

Configure KMES Series 3

14min

This section starts with general configurations you must make on the KMES to enable HashiCorp Vault to integrate the KMES with the Managed Keys functionality. Then, it covers the necessary steps to configure TLS communication between the KMES and the Vault instance.

Configure general KMES settings

Perform the following tasks to configure the KMES Series 3 for communication with SignTool:

  1. Create a Vault role and identity with the correct assigned permissions.
  2. Enable Host API commands.

The following sections show you how to complete these tasks.

Create a role and identity for Vault with the required permissions

Perform the following steps to create a new role and identity for Vault on the KMES Series 3:

A later section shows you how to configure the name of this identity in the Futurex PKCS #11 configuration file.

1

Log in to the KMES Series 3 application interface with the default Admin identities.

2

Go to Identity Management > Roles and select [ Add ].

3

In the Role Editor window, perform the following steps:

  1. Specify a name for the role.
  2. Set the number of logins required to 1.
  3. Go to the Advanced tab and allow authentication to the Host API port only.
  4. Leave all other fields set to the default values.
4

Go to the Permissions tab and select the following permissions:

Permission

Subpermission



Certificate Authority

Add, Export, Upload



Cryptographic Operations

Sign, Verify, Encrypt, Decrypt



Keys

Add, Export


5

Select [ OK ] to finish creating the role.

6

Go to Identity Management > Identities, right-click anywhere, and select Add > Client Application.

7

Under Info in the Identity Editor window, select Application for the storage location, and specify a name for the identity.

8

Under Assigned Roles, select the role you created.

9

Under Authentication, configure the password.

10

Leave all other fields set to the default values and select [ OK ] to finish creating the identity.

Enable Host API commands for HashiCorp Vault operation

Because the Futurex PKCS #11 library connects to the Host API port on the KMES, you must define which Host API commands to enable for the FXPKCS11 library to execute. To set the enabled commands, complete the following steps:

1

Log in to the KMES Series 3 application interface with the default Admin identities.

2

Go to Administration > Configuration > Host API Options and enable the following commands:

Command

Description and subcommand permissions



ATKG

Manipulate HSM trusted asymmetric key group

  • add
  • modify
  • delete
  • get


ATTR

Generic Attribute Operations

  • get
  • put
  • patch


ECHO

Communication Test/Retrieve Version



RAFA

Filter Issuance Policy



RKCP

Get Command Permissions

  • get
  • modify


RKGP

Export Asymmetric HSM Trusted Key



RKGS

Generate Signature



RKLN

Lookup Objects



RKLO

Login User



RKPK

Pop Generated Key



TIME

Get/Set Time



Configure TLS communication between the KMES Series 3 and the Vault instance

To configure TLS communication, you need to perform the following tasks:

  1. Create a Certificate Authority.
  2. Generate a CSR for the System/Host API connection pair.
  3. Sign the System/Host API CSR.
  4. Export the Root CA certificate.
  5. Export the signed System/Host API certificate.
  6. Load the exported certificates into the System/Host API connection pair..
  7. Issue a client certificate for Vault.
  8. Export the Vault certificate as a PKCS #12 file.

The following sections show you how to perform these tasks.

Create a Certificate Authority

1

Log in to the KMES Series 3 application interface with the default Admin identities.

2

Go to PKI > Certificate Authorities and select [ Add CA ] at the bottom of the page.

3

In the Certificate Authority window, enter a name for the Certificate Container, leave all other fields set to the default values, and select [ OK ].

The Certificate Container you created now displays in the Certificate Authorities menu.

4

Right-click the Certificate Container and select Add Certificate > New Certificate.

5

On the Subject DN tab, set a Common Name for the certificate, such as System TLS CA Root.

6

On the Basic Info tab, leave all of the fields set to their default values.

7

On the V3 Extensions tab, select the Certificate Authority profile, and select [ OK ].

The root CA certificate now displays under the previously created Certificate Container.

Generate a CSR for the System/Host API connection pair

1

Go to Administration > Configuration > Network Options.

2

In the Network Options window, go to the TLS/SSL Settings tab.

3

Under the System/Host API connection pair, uncheck Use Futurex certificates, tand select [ Edit ] next to PKI Keys in the User Certificates section.

4

In the Application Public Keys window, select [ Generate ].

5

When warned that SSL will not be functional until new certificates are imported, select [ Yes ] to continue.

6

In the PKI Parameters window, leave the fields set to their default values and select [ OK].

7

When notified that a PKI Key Pair is loaded in the Application Public Keys window, select [ Request ].

8

On the Subject DN tab, set a Common Name for the certificate, such as KMES.

9

On the V3 Extensions tab, select the TLS Server Certificate profile.

10

On the PKCS #10 Info tab, select a save location for the CSR, and select [ OK ].

11

When notified that the certificate signing request was successfully written to the file location that was selected, select [ OK ].

12

Select [ OK ] again to save the Application Public Keys settings.

The main Network Options window now shows Loaded next to PKI Keys for the System/Host API connection pair.

Sign the System/Host API CSR

1

Go to PKI > Certificate Authorities.

2

Right-click the root CA certificate you created, and select Add Certificate > From Request.

3

In the file browser, find and select the CSR that you generated for the System/Host API connection pair.

4

After it loads, you don't need to modify any settings for the certificate, so select [ OK ].

The signed System/Host API certificate now showsunder the root CA certificate on the Certificate Authorities page.

Export the Root CA certificate

1

Go to PKI > Certificate Authorities.

2

Right-click the System TLS CA Root certificate, and select Export > Certificate(s).

3

In the Export Certificate window, change the encoding to PEM, and select [ Browse ].

4

In the file browser, go to the location where you want to save the Root CA certificate. Specify tls_ca.pem as the name for the file, and select [ Open ].

5

Select [ OK ].

A message box displays that the PEM file was successfully written to the location that you specified.

Export the signed System/Host API certificate

1

Go to PKI > Certificate Authorities.

2

Right-click the KMES certificate, and select Export > Certificate(s).

3

In the Export Certificate window, change the encoding to PEM, and select [ Browse ].

4

In the file browser, go to the location where you want to save the Root CA certificate. Specify tls_kmes.pem as the name for the file, and select [ Open ].

5

Select [ OK ].

A message box displays that the PEM file was successfully written to the location that you specified.

Load the exported certificates into the System/Host API connection pair

1

Go to Administration > Configuration > Network Options.

2

In the Network Options window, go to the TLS/SSL Settings tab.

3

Select [ Edit ] next to Certificates in the User Certificates section.

4

Right-click the System/Host API SSL CA X.509 certificate container, and select Import.

5

Select [ Add ] at the bottom of the Import Certificates window.

6

In the file browser, select both the root CA certificate and the signed System/Host API certificate and select [ Open ].

7

Select [ OK ] to save the changes.

In the Network Options window, the System/Host API connection pair shows Signed loaded next to Certificates in the User Certificates section.

Issue a client certificate for Vault

A later section shows you how to configure this client certificate in the Futurex PKCS #11 configuration file.

1

Go to PKI > Certificate Authorities.

2

Right-click the System TLS CA Root certificate and select Add Certificate > New Certificate.

3

IO the Subject DN tab, set a Common Name for the certificate, such as Vault.

4

Leave all settings on the Basic Info tab set to their default values.

5

On the V3 Extensions tab, select the TLS Client Certificate profile and select [ OK ].

The Vault certificate now shows under the System TLS CA Root certificate.

Export the Vault certificate as a PKCS #12 file

To perform the following steps, you must go to Configuration > Options and enable the Allow export of certificates using passwords option.

1

Go to PKI > Certificate Authorities.

2

Right-click the Vault certificate, and select Export > PKCS12.

3

Select the Export Selected option, specify a unique name for the export file, and select [ Next ].

4

Select [ Finish ] to initiate the export.

5

Move both the Vault certificate and the Root CA certificate you exported to the computer that will be running the Vault instance.

A later section shows how to configure and use them for TLS communication with the KMES Series 3.