Google Cloud Platform logo

Google Cloud Key Management Service: Node.js Client

release level npm version codecov

Google Cloud Key Management Service (KMS) API client for Node.js

Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in Client Libraries Explained.

Table of contents:

Quickstart

Before you begin

  1. Select or create a Cloud Platform project.
  2. Enable billing for your project.
  3. Enable the Google Cloud Key Management Service API.
  4. Set up authentication with a service account so you can access the API from your local workstation.

Installing the client library

npm install @google-cloud/kms

Using the client library

async function quickstart(
  projectId = 'your-project-id' // Your GCP projectId
) {
  // Imports the @google-cloud/kms client library
  const kms = require('@google-cloud/kms');

  // Instantiates an authorized client
  const client = new kms.KeyManagementServiceClient();

  // Lists keys in the "global" location.
  const locationId = 'global';

  // Lists key rings
  const parent = client.locationPath(projectId, locationId);
  const [keyRings] = await client.listKeyRings({parent});

  // Display the results
  if (keyRings.length) {
    console.log('Key rings:');
    keyRings.forEach(keyRing => console.log(keyRing.name));
  } else {
    console.log(`No key rings found.`);
  }
}

Samples

Samples are in the samples/ directory. The samples' README.md has instructions for running the samples.

Sample Source Code Try it
Add Member To Crypto Key Policy source code Open in Cloud Shell
Add Member To Key Ring Policy source code Open in Cloud Shell
Create Crypto Key source code Open in Cloud Shell
Create Crypto Key Version source code Open in Cloud Shell
Create Keyring source code Open in Cloud Shell
Decrypt source code Open in Cloud Shell
Destroy Crypto Key Version source code Open in Cloud Shell
Disable Crypto Key Version source code Open in Cloud Shell
Enable Crypto Key Version source code Open in Cloud Shell
Encrypt source code Open in Cloud Shell
Get Crypto Key source code Open in Cloud Shell
Get Crypto Key Iam Policy source code Open in Cloud Shell
Get Keyring source code Open in Cloud Shell
Get Keyring Iam Policy source code Open in Cloud Shell
List Crypto Key Versions source code Open in Cloud Shell
List Crypto Keys source code Open in Cloud Shell
List Keyrings source code Open in Cloud Shell
Quickstart source code Open in Cloud Shell
Remove Member Crypto Key Policy source code Open in Cloud Shell
Remove Member From Key Ring Policy source code Open in Cloud Shell
Restore Crypto Key Version source code Open in Cloud Shell
Set Primary Crypto Key Version source code Open in Cloud Shell

The Google Cloud Key Management Service Node.js Client API Reference documentation also contains samples.

Versioning

This library follows Semantic Versioning.

This library is considered to be in beta. This means it is expected to be mostly stable while we work toward a general availability release; however, complete stability is not guaranteed. We will address issues and requests against beta libraries with a high priority.

More Information: Google Cloud Platform Launch Stages

Contributing

Contributions welcome! See the Contributing Guide.

License

Apache Version 2.0

See LICENSE