Configuring HashiCorp Vault

Steps to Configure HashiCorp Vault CA

To configure HashiCorp Vault CA

  1. Go to menu > KUBE+ > CLUSTER PKI > Certificate Authority
  2. Click the +Add icon on the top right of the page.
  3. Select the HashiCorp Vault in the left side vendor list.
  4. Update the details in the General Information section as described in the table below:
    Table 1. General Information - Field Description Table
    Field Name Description
    *CA Account name

    A unique name to identify the CA setting.

    NOTE: No special characters other than ‘.’, ‘-’, and ’_’ are allowed. Names should not start with special characters

    *Purpose/Usage

    The dropdown contains checkboxes for the certificate type for which the CLM actions will be enabled.

    The values are:

    • Server,

    • Client

    • Code Signing

    One or more values can be selected depending on the type of account users need to create.

    Proxy Required Enable this field if the CA communication needs to happen via Proxy. The proxy details configured in general settings will be used for communication.
    Data Center (AppViewX's CA agent) Select the data center through which the CA communication needs to happen.
    Note: The asterisk (*) symbol indicates a mandatory field.
  5. Update the details in the CA Configuration section as described in the tables below. These fields are necessary for invoking the HashiCorp CA Secret Engine for Certificate Management. The fields displayed in the CA Configuration section depend on the value selected in the Method field. The two auth method values are:
    • APP ROLE - The APP ROLE auth method allows machines or apps to authenticate with Vault-defined roles. An "AppRole" represents a set of Vault policies and login constraints that must be met to receive a token with those policies. An AppRole can be created for a particular machine, or even a particular user on that machine or a service spread across machines. The credentials required for successful login depend upon the constraints set on the AppRole associated with the credentials.

    • AWS - The AWS auth method provides an automated mechanism to retrieve a Vault token for IAM principals and AWS EC2 instances. Unlike most Vault auth methods, this method does not require manual first-deploying or provisioning of security-sensitive credentials (tokens, username/password, client certificates, etc), by operators under many circumstances.

    Table 2. CA Configuration for App Role - Field Description Table
    Field Name Description
    *Base URL The base of URL of the CA account. This is a user input value.
    *Method APP ROLE
    *Role ID

    User input value

    RoleID is an identifier that selects the AppRole against which the other credentials are evaluated. When authenticating against this auth method's login endpoint, the RoleID is a required argument at all times. By default, RoleIDs are unique UUIDs, which allow them to serve as secondary secrets to the other credential information.

    *Secret Key

    User input value

    Secret Key (SecretID) is a credential that is required by default for any login and is intended to always be secret. They can be created against an AppRole either via generation of a 128-bit purely random UUID by the role itself or via specific, custom values. Similarly to tokens, Secret keys have properties like usage-limit, TTLs and expirations.

    Note: The asterisk (*) symbol indicates a mandatory field.
    Table 3. CA Configuration for AWS - Field Description Table
    Field Name Description
    *Base URL The base of URL of the CA account. This is a user input value.
    *Method AWS
    *Access Key

    User input value

    Access Keys are used to sign the requests that are sent. Access Key and Secret Key are used for programmatic (API) access to AWS services.

    *Secret Key

    User input value

    Secret Key (SecretID) is a credential that is required by default for any login and is intended to always be secret. Similar to tokens, SecretIDs have properties like usage-limit, TTLs, and expirations.

    *Role Name

    User input value

    The basic mechanism of operation (AWS authorization workflow) is per-role. Roles are registered in the method and associated with a specific authentication type that cannot be changed once the role has been created. Roles can also be associated with various optional restrictions, such as the set of allowed policies and max TTLs on the generated tokens.

    Note: The asterisk (*) symbol indicates a mandatory field.

    The correct values entered in the fields establish a connection with the HashiCorp vault to be able to fetch the secret engine.

  6. Click the Fetch Secret Engine button.
    A list of PKI secret engines is displayed. These will be presented to users in the policy. from where they can select the respective secret engines.
  7. Click Save.

    The Account details are displayed in a grid at the bottom of the screen, with options to options to edit, check (connection status), and delete.

Editing an Account

  1. Navigate to Start > Certificate, and under Advanced Configuration, click Create a Certificate Authority.
    The list of Accounts is displayed in the grid.
  2. Click the account name from the ‘Name’ column in the grid.
    The General Information and CA Configuration sections are displayed with pre-populated values.
  3. Change any of the editable fields and click the Fetch Secret Engine button.
  4. Click the Update button.

Deleting an Account

  1. Navigate to Start > Certificate, and under Advanced Configuration, click Create a Certificate Authority.
    The list of Accounts is displayed in the grid.
  2. In the last column of the grid with the listed accounts, click the delete or bin icon.
    The Delete Confirmation pop-up is displayed.
  3. Click Yes.