Skip to content

Instantly share code, notes, and snippets.

@HrushikeshK
Created January 19, 2022 13:17
Show Gist options
  • Save HrushikeshK/1233b49cbeb76a1c586d599cd5150186 to your computer and use it in GitHub Desktop.
Save HrushikeshK/1233b49cbeb76a1c586d599cd5150186 to your computer and use it in GitHub Desktop.
IAM deactivate dormant
def check_login_profile(userData):
created_date = datetime.now()
last_used_date = datetime.now()
user_arn = userData['Arn']
username = userData['UserName']
user = iam_resource.User(username)
login_profile = iam_resource.LoginProfile(username)
user.load()
passwd_last_used = user.password_last_used
try:
# Deactivate users with "None" PasswordLastUsed
if passwd_last_used == None:
ret_val = login_profile.delete()
# Send slack alert
response = requests.request("POST", url, data=get_slack_payload(username, False, arn=user_arn), headers=headers)
# Deactivate users with PasswordLastUsed more than 90 days
else:
last_used_date = passwd_last_used.replace(tzinfo=None)
difference = date_now - last_used_date
if difference.days > max_idle_days:
# Delete user password
ret_val = login_profile.delete()
# Send slack alert
response = requests.request("POST", url, data=get_slack_payload(username, False, arn=user_arn, diff=difference.days), headers=headers)
except Exception as e:
print("Exception occurred:", e)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment