in index.js [35:76]
function systemManagerSyncSecurityHub(resolve, reject) {
ssm.listComplianceItems(listItemsParams, function (err, complianceItems) {
if (err) {
console.log(err, err.stack);
reject(err);
}
if (complianceItems['ComplianceItems'][0] != undefined) {
sts.getCallerIdentity({}, function (err, stsData) {
if (err) {
console.log(err);
reject(err);
return;
}
var missingPatches = getMissingPatches(complianceItems);
var findings = [];
Object.values(missingPatches).forEach(function (singleComplianceItemFinding) {
findings.push(getSingleComplianceItemFinding(singleComplianceItemFinding, stsData));
});
console.log(JSON.stringify(findings));
securityhub.batchImportFindings({
'Findings': findings
}, function (err, secHubData) {
if (err) {
reject(err);
return;
}
else {
resolve(secHubData);
}
});
});
} else {
console.log("There is no instance with missing patches and compliance severity set as critical")
return;
}
});
}