Pythonで記述された(非常に基本的ですが完全に機能する)AWSラムダ関数がありますが、接続する資格情報が埋め込まれています:1)外部Webサービス2)DynamoDBテーブル。
この関数の機能はかなり基本的です。サービスに対してログインをPOSTし(認証情報#1)、応答ステータスの一部をDynamoDBテーブル(AWS認証情報#2)に保存します。
これらは、関数の関連部分です。
h = httplib2.Http()
auth = base64.encodestring('myuser' + ':' + 'mysecretpassword')
(response, content) = h.request('https://vca.vmware.com/api/iam/login', 'POST', headers = {'Authorization':'Basic ' + auth,'Accept':'application/xml;version=5.7'})
その後
conn = boto.connect_dynamodb(aws_access_key_id='FAKEhhahahah',aws_secret_access_key='FAKEdhdhdudjjdjdjhdjjhdjdjjd')
関数内にこれらの資格情報を持たないことで、コードをどのようにクリーンアップしますか?
参考までに、この関数は5分ごとに実行されるようにスケジュールされています(これをトリガーする外部イベントは他にありません)。
あなたの例では、2種類の資格情報があります。
AWSのクレジットを使用すると、すべてが簡単になります。IAMロールを作成し、dynamodbに権限を付与すれば、準備は完了です。
AWS以外の資格がある場合、最も安全なアプローチは次のとおりです。
kms.encrypt('foo')
)この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加