async function createCookieKeysAddToSecrets()

in resources/add_federation_configuration_lambda/handler.js [58:100]


async function createCookieKeysAddToSecrets(tenantId) {
  console.log(`REQUEST RECEIVED:\n${JSON.stringify(tenantId)}`);
  let responseData; let
    responseStatus;
  try {
    console.log('Creating cookie keys as secret in AWS Secrets Manager...');

    const cookieKey1 = (await secretsmanager.getRandomPassword({
      PasswordLength: 86,
    }).promise()).RandomPassword;
    const cookieKey2 = (await secretsmanager.getRandomPassword({
      PasswordLength: 86,
    }).promise()).RandomPassword;

    const cookieSecretsParams = {
      Description: `Cookie keys for ${tenantId}`,
      Name: `/mysaasapp/${tenantId}/cookie-secrets`,
      SecretString: JSON.stringify([cookieKey1, cookieKey2]),
    };

    return secretsmanager.createSecret(cookieSecretsParams).promise()
      .then((secretResponse) => {
        responseData = {
          SecretArn: secretResponse.ARN,
          SecretName: secretResponse.Name,
          SecretVersionId: secretResponse.secretVersionId,

        };
        console.log(`Create secret response data: ${JSON.stringify(responseData)}`);
        responseStatus = 'SUCCESS';
        return (responseData);
      })
      .catch((err) => {
        responseStatus = 'FAILED';
        responseData = { Error: 'Creation of tenant cookie secret failed.' };
        console.log(`${responseData.Error}:\n`, err);
        return (responseStatus, responseData, err);
      });
  } catch (err) {
    console.log(err);
    throw err;
  }
}