def test(self):
last_used_times = []
if self.user_dict['access_key_1_active'] == 'true':
last_used_times.append(
dateutil.parser.parse(
self.user_dict['access_key_1_last_used_date']
)
)
if self.user_dict['access_key_2_active'] == 'true':
last_used_times.append(
dateutil.parser.parse(
self.user_dict['access_key_2_last_used_date']
)
)
if self.user_dict['password_enabled'] in ['true', 'not_supported'] and \
self.user_dict['password_last_used'] != 'no_information':
last_used_times.append(
dateutil.parser.parse(
self.user_dict['password_last_used']
)
)
if len(last_used_times) == 0:
self.reason = 'Account has never been used'
self.status = common.CheckState.FAIL
return
last_used = max(last_used_times)
now = datetime.datetime.utcnow()
now = now.replace(tzinfo=last_used.tzinfo)
delta = datetime.timedelta(days=config.config['ACCOUNT_INACTIVE_DAYS'])
difference = now - last_used
if delta < difference:
self.reason = 'Account last used {0} days ago.'.format(difference.days)
self.status = common.CheckState.FAIL
else:
self.status = common.CheckState.PASS
评论列表
文章目录