All Products
Search
Document Center

Key Management Service:Create access credentials

Last Updated:Mar 31, 2026

When you integrate Key Management Service (KMS) with the instance SDK, KMS uses application access points (AAPs) for identity authentication and access control. An AAP bundles a permission policy with credentials — the client key authenticates your application's identity when it accesses KMS resources. This topic describes how to create a client key.

Usage notes

  • Create a separate AAP for each application to maintain distinct access permissions.

  • Client keys are valid for five years by default. Set the validity period to one year to reduce the risk of credential leaks. Replace the client key before it expires to maintain continuous KMS access. For instructions, see Replace ClientKey.

Choose a creation method

MethodBest forAccess scope
Quick creationTesting and developmentFull access to all keys and secrets in the KMS instance
Standard creation (recommended)Production environmentsGranular control — define exactly which keys and secrets the application can access

Quick creation

  1. Log on to the KMS console. In the top navigation bar, select a region. In the left navigation pane, choose Application Access > AAPs.

  2. On the Application Access tab, click Create AAP. In the Create AAP panel, configure the following parameters.

    ParameterDescription
    ModeSelect Quick Creation.
    Scope (KMS Instance)Select the KMS instance to access.
    Application Access Point NameEnter the AAP name.
    Authentication MethodDefaults to ClientKey. This value cannot be changed.
    Default Permission PolicyDefaults to key/*secret/*. This value cannot be changed. The application can access all keys and secrets in the specified KMS instance.
  3. Click OK. The browser automatically downloads the client key.

The client key consists of two files: Application Access Secret(ClientKeyContent), saved as clientKey_**.json`, and Password, saved as `clientKey_**_Password.txt.

Standard creation

Standard creation involves three sequential steps: create a network access rule (optional but recommended), create a permission policy, then create the AAP.

Steps 1 and 2 are typically performed by a security admin. Step 3 is performed by the application developer.

Step 1: Create a network access rule (security admin)

If you want to control access based on source IP addresses, create a network access rule. For enhanced security, we recommend setting up network access rules.

  1. Log on to the KMS console. In the top navigation bar, select a region. In the left navigation pane, choose Application Access > AAPs.

  2. Click the Network Access Rules tab, then click Create Network Access Rule.

  3. In the Create Network Access Rule panel, configure the following parameters and click OK.

    ParameterDescription
    Rule NameEnter the rule name.
    Network TypeSelect Private.
    Allowed Source IP AddressesEnter the IP addresses allowed to access the KMS instance. If your application uses a proxy server, enter the proxy IP.
    DescriptionEnter a description for the rule.

Step 2: Create a permission policy (security admin)

  1. Click the Policies tab, then click Create Policy.

  2. In the Create Permission Policy panel, configure the following parameters and click OK.

    ParameterDescription
    Policy NameEnter the policy name.
    ScopeSelect the KMS instance.
    RBAC PermissionsSelect the permissions to grant: CryptoServiceKeyUser (use keys), CryptoServiceSecretUser (use secrets).
    Accessible ResourcesSelect the keys and secrets the application needs to access. If you select multiple secrets and their combined name length exceeds the limit, an "Invalid Parameter" error appears. Use a wildcard instead — for example, secret/rds-ibm* grants access to all secrets prefixed with rds-ibm.
    Network Access RulesSelect the network access rule created in step 1.
    DescriptionEnter a description for the policy.

Step 3: Create an AAP (developer)

  1. Click the Application Access tab, then click Create AAP.

  2. In the Create AAP panel, configure the following parameters.

    ParameterDescription
    ModeSelect Standard Creation.
    Application Access Point NameEnter the AAP name.
    Authentication MethodSelect ClientKey.
    Encryption PasswordEnter a password for the client key. Must be 8–64 characters and include at least two of: numbers, uppercase letters, lowercase letters, or special characters ~!@#$%^&*?_-.
    Validity PeriodSet to one year to reduce the risk of credential leaks. Replace the client key before it expires — see Replace ClientKey.
    PoliciesSelect the permission policy created in step 2.
    DescriptionEnter a description for the AAP.
  3. Click OK. The browser automatically downloads the client key.

The client key consists of two files: Application Access Secret(ClientKeyContent), saved as clientKey_**.json`, and Password, saved as `clientKey_**_Password.txt.

What to save

After creating the client key, securely store the following items before integrating the SDK. Think of ClientKeyContent as your application's username — it identifies who is connecting — and the Password as the secret that protects it.

ClientKeyContent

The clientKey_****.json file contains your application's identity credentials. The SDK uses this file for authentication.

Password

The clientKey_****_Password.txt file contains the password that protects the client key file.

KMS instance CA certificate

  1. On the Instances page, locate the Instance CA Certificate field and click Download.

  2. In the Instance CA Certificate dialog box, select the instance ID, click Download, and store the file securely.

The default filename is PrivateKmsCA_kst-******.pem.

KMS instance endpoint

  1. On the Instances page, click the Software Key Management or Hardware Key Management tab, then click the KMS instance.

  2. In the Basic Information section, copy the endpoint from the Instance VPC Endpoint field.image

What's next

After saving all required files, configure the SDK to use the client key. For integration instructions, see the KMS instance SDK documentation.