2017-07-18 8 views
0

私は、awsラムダ関数を使用してユーザーにアクセスキー年齢をPython 3.6とBoto 3を使用させる方法を見つけようとしています。私の問題は、適切なAPIこの目的のために存在する場合には、使用のために呼び出します。私が見つけることができる最も近い2つはlist_access_keysです。これを使用してキーの作成日を見つけることができます。そしてget_access_key_last_used私はキーが最後に使用された日を与えることができます。ただし、AWS IAMコンソールのユーザーの表示には、アクセスキーのような単純な年齢の記事は表示されません。アクセスキーの年齢を取得する方法はありますか?アクセスキーの取得年齢AWS Boto3

答えて

0

直接的な方法はありません。次のコードスニペットを使用して、試していることを達成できます。

import boto3, json, time, datetime, sys 

client = boto3.client('iam') 
username = "<YOUR-USERNAME>" 
res = client.list_access_keys(UserName=username) 
accesskeydate = res['AccessKeyMetadata'][0]['CreateDate'] ### Use for loop if you are going to run this on production. I just wrote it real quick 
accesskeydate = accesskeydate.strftime("%Y-%m-%d %H:%M:%S") 
currentdate = time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime()) 

accesskeyd = time.mktime(datetime.datetime.strptime(accesskeydate, "%Y-%m-%d %H:%M:%S").timetuple()) 
currentd = time.mktime(datetime.datetime.strptime(currentdate, "%Y-%m-%d %H:%M:%S").timetuple()) 

active_days = (currentd - accesskeyd)/60/60/24 ### We get the data in seconds. converting it to days 
print (int(round(active_days))) 

期待どおりに動作するかどうか教えてください。

関連する問題