Skip to content

Commit 906b072

Browse files
committed
IAM | Add Events
Signed-off-by: shirady <57721533+shirady@users.noreply.github.com>
1 parent 8b676c6 commit 906b072

File tree

2 files changed

+38
-5
lines changed

2 files changed

+38
-5
lines changed

src/server/system_services/account_server.js

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1261,6 +1261,16 @@ async function update_user(req) {
12611261
}
12621262
});
12631263

1264+
const sys_id = account_util.get_system_id_for_events(req);
1265+
Dispatcher.instance().activity({
1266+
event: 'account.update',
1267+
level: 'info',
1268+
system: sys_id,
1269+
actor: requesting_account._id,
1270+
account: requested_account._id,
1271+
desc: `${requested_account.email.unwrap()} was updated by ${requesting_account.email.unwrap()}`,
1272+
});
1273+
12641274
return {
12651275
iam_path: iam_path || IAM_DEFAULT_PATH,
12661276
username: user_name,
@@ -1279,11 +1289,7 @@ async function delete_user(req) {
12791289
account_util._check_if_requested_account_is_root_account_or_IAM_user(action, requesting_account, requested_account);
12801290
account_util._check_if_requested_is_owned_by_root_account(action, requesting_account, requested_account);
12811291
account_util._check_if_user_does_not_have_resources_before_deletion(action, requested_account);
1282-
const delete_user_info = {
1283-
system: system_store.data.systems[0],
1284-
account: requested_account,
1285-
};
1286-
return account_util.delete_account(delete_user_info, requested_account);
1292+
return account_util.delete_account(req, requested_account);
12871293
}
12881294

12891295
async function list_users(req) {
@@ -1384,6 +1390,16 @@ async function update_access_key(req) {
13841390
}]
13851391
}
13861392
});
1393+
1394+
const sys_id = account_util.get_system_id_for_events(req);
1395+
Dispatcher.instance().activity({
1396+
event: 'account.update_credentials',
1397+
level: 'info',
1398+
system: sys_id,
1399+
actor: requesting_account._id,
1400+
account: requested_account._id,
1401+
desc: `Credentials for ${requested_account.email.unwrap()} were updated by ${requesting_account.email.unwrap()}`,
1402+
});
13871403
}
13881404

13891405
async function get_access_key_last_used(req) {
@@ -1423,6 +1439,16 @@ async function delete_access_key(req) {
14231439
}]
14241440
}
14251441
});
1442+
1443+
const sys_id = account_util.get_system_id_for_events(req);
1444+
Dispatcher.instance().activity({
1445+
event: 'account.delete_credentials',
1446+
level: 'info',
1447+
system: sys_id,
1448+
actor: requesting_account._id,
1449+
account: requested_account._id,
1450+
desc: `Credentials for ${requested_account.email.unwrap()} were deleted by ${requesting_account.email.unwrap()}`,
1451+
});
14261452
}
14271453

14281454
async function tag_user(req) {

src/util/account_util.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,6 +773,12 @@ function get_sorted_list_tags_for_user(user_tagging) {
773773
}));
774774
}
775775

776+
function get_system_id_for_events(req) {
777+
const sys_id = req.rpc_params.new_system_parameters ?
778+
system_store.parse_system_store_id(req.rpc_params.new_system_parameters.new_system_id) :
779+
req.system && req.system._id;
780+
return sys_id;
781+
}
776782

777783
exports.delete_account = delete_account;
778784
exports.create_account = create_account;
@@ -801,3 +807,4 @@ exports.return_list_member = return_list_member;
801807
exports.get_owner_account_id = get_owner_account_id;
802808
exports.get_sorted_list_tags_for_user = get_sorted_list_tags_for_user;
803809
exports._check_if_iam_user_belongs_to_account_owner_by_access_key = _check_if_iam_user_belongs_to_account_owner_by_access_key;
810+
exports.get_system_id_for_events = get_system_id_for_events;

0 commit comments

Comments
 (0)