Menu
Open source

Secret

Secret is returned by the SecretsManagerClient.* methods that query secrets. Namely, listSecrets, getSecret, createSecret, and putSecretValue returns either an instance or array of Secret objects. The Secret object describes an Amazon Secrets Manager secret.

NameTypeDescription
Secret.namestringThe friendly name of the secret. You can use forward slashes in the name to represent a path hierarchy.
Secret.arnstringThe Amazon Resource Name (ARN) of the secret.
Secret.createdAtnumberThe date and time (timestamp) when a secret was created.
Secret.lastAccessDatenumberThe last date that this secret was accessed. This value is truncated to midnight of the date and therefore shows only the date, not the time.
Secret.lastChangedDatenumberThe last date and time that this secret was modified in any way.
Secret.tagsArray<{“key”: “value”}>The list of user-defined tags associated with the secret.

Example

JavaScript
import exec from 'k6/execution';

import {
  AWSConfig,
  SecretsManagerClient,
} from 'https://jslib.k6.io/aws/0.12.3/secrets-manager.js';

const awsConfig = new AWSConfig({
  region: __ENV.AWS_REGION,
  accessKeyId: __ENV.AWS_ACCESS_KEY_ID,
  secretAccessKey: __ENV.AWS_SECRET_ACCESS_KEY,
});

const secretsManager = new SecretsManagerClient(awsConfig);
const testSecretName = 'jslib-test-secret';

export default async function () {
  // List the secrets the AWS authentication configuration
  // gives us access to.
  const secrets = await secretsManager.listSecrets();

  // If our test secret does not exist, abort the execution.
  if (secrets.filter((s) => s.name === testSecretName).length == 0) {
    exec.test.abort('test secret not found');
  }

  // Let's get it and print its content
  const downloadedSecret = await secretsManager.getSecret(testSecretName);
  console.log(downloadedSecret.secret);
}

A k6 script that will query the user’s secrets and print a test secret’s value