async function getSecret()

in resources/add_ldap_user_group/helpers/get_secret.js [18:54]


async function getSecret(secretName) {
  console.log('About to retrieve this secret:', secretName);
  return client.getSecretValue({ SecretId: secretName }).promise().then((data) => {
    console.log('About to return this secret:', data);
    // Decrypts secret using the associated KMS CMK.
    // Depending on whether the secret is a string or binary, one of these fields will be populated.
    if ('SecretString' in data) {
      return data.SecretString;
    }
    const buff = Buffer.from(data.SecretBinary, 'base64');
    return buff.toString('ascii');

    // Your code goes here.
  }).catch((err) => {
    if (err.code === 'DecryptionFailureException') {
    // Secrets Manager can't decrypt the protected secret text using the provided KMS key.
    // Deal with the exception here, and/or rethrow at your discretion.
      throw err;
    } else if (err.code === 'InternalServiceErrorException') {
    // An error occurred on the server side.
    // Deal with the exception here, and/or rethrow at your discretion.
      throw err;
    } else if (err.code === 'InvalidParameterException') {
    // You provided an invalid value for a parameter.
    // Deal with the exception here, and/or rethrow at your discretion.
      throw err;
    } else if (err.code === 'InvalidRequestException') {
    // You provided a parameter value that is not valid for the current state of the resource.
    // Deal with the exception here, and/or rethrow at your discretion.
      throw err;
    } else if (err.code === 'ResourceNotFoundException') {
    // We can't find the resource that you asked for.
    // Deal with the exception here, and/or rethrow at your discretion.
      throw err;
    }
  });
}