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;
}
}