aws-resource-remediation
Version:
A module to remediate AWS resources.
48 lines (43 loc) • 1.44 kB
JavaScript
/**
* Created by kpadmawa on 1/19/2017.
*/
/**
* Created by kpadmawa on 1/19/2017.
*/
const AWS = require('aws-sdk');
const constants = require('../constants');
var logger = require('node-generic-logger');
function KMSRemediator (kms) {
this.kms = kms;
}
KMSRemediator.prototype.enableKeyRotation = function (invocation, context, lastResult , cb) {
if (this.kms == null) {
var awscreds = {
accessKeyId: invocation['aws.credentials.accessKeyId'],
secretAccessKey: invocation['aws.credentials.secretAccessKey'],
region: invocation['region']
};
this.kms = new AWS.KMS({
accessKeyId: awscreds.accessKeyId,
secretAccessKey: awscreds.secretAccessKey,
region: awscreds.region
});
}
var enableKeyRotationParams = {};
if(invocation.payload){
for (var property in invocation.payload) {
if (invocation.payload.hasOwnProperty(property)) {
enableKeyRotationParams[property] = invocation.payload[property];
}
}
}
this.kms.enableKeyRotation(enableKeyRotationParams, function (err, data) {
if (err) {
logger.error('Failed to update access key' + err.stack);
return cb(err);
} else {
return cb(null, data);
}
});
};
module.exports = KMSRemediator;