Skip to content

Commit 189aa70

Browse files
authored
2 parents 7e6e52c + 6b03c62 commit 189aa70

File tree

1 file changed

+20
-6
lines changed
  • cloud-watch-to-slack-testing/deployment

1 file changed

+20
-6
lines changed

Diff for: cloud-watch-to-slack-testing/deployment/index.js

+20-6
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ function getInstanceNameAndSendMsgToSlack(
5757
var tagInstanceNameKey =
5858
instance && instance.Tags.find((tag) => "Name" === tag.Key);
5959
if (tagInstanceNameKey) {
60-
var tagInstanceName = tagInstanceNameKey.Value || "unknown";
60+
var tagInstanceName = tagInstanceNameKey.Value || null;
6161
return callback(
6262
slackChannel,
6363
messageText,
@@ -73,7 +73,7 @@ function getInstanceNameAndSendMsgToSlack(
7373
return callback(
7474
slackChannel,
7575
messageText,
76-
"unknown",
76+
null,
7777
targetInstanceId,
7878
processEventCallback
7979
);
@@ -88,8 +88,12 @@ function constructMsgAndSendToSlack(
8888
callback
8989
) {
9090
console.info(`Found instance name:${targetInstanceName}`);
91-
messageText =
92-
messageText + ` to target: ${targetInstanceName} (${targetInstanceId})`;
91+
if (targetInstanceName) {
92+
messageText =
93+
messageText + ` to target: ${targetInstanceName} (${targetInstanceId})`;
94+
} else {
95+
messageText = messageText + ` to target: ${targetInstanceId}`;
96+
}
9397

9498
sendMessageToSlack(slackChannel, messageText, callback);
9599
}
@@ -188,8 +192,18 @@ function ssmOrSigninMessageText(message) {
188192

189193
let messageText = `uninitialized message text`;
190194
if (message.source === "aws.ssm") {
191-
const userName = message.detail.userIdentity.userName;
192-
messageText = `${userName} initiated AWS Systems Manager (SSM) event ${eventName}`;
195+
let user;
196+
if (message.detail.userIdentity.type === "IAMUser") {
197+
user = message.detail.userIdentity.userName;
198+
} else if (message.detail.userIdentity.type === "AssumedRole") {
199+
const accountId = message.detail.userIdentity.accountId;
200+
// Don't display account ID
201+
user = message.detail.userIdentity.arn.replace(
202+
accountId,
203+
"X".repeat(accountId.length)
204+
);
205+
}
206+
messageText = `${user} initiated AWS Systems Manager (SSM) event ${eventName}`;
193207
} else if (message.source === "aws.signin") {
194208
const userType = message.detail.userIdentity.type;
195209
messageText = `A user initiated AWS sign-in event ${eventName} as ${userType}`;

0 commit comments

Comments
 (0)