AWS Lambda関数で外部認証情報を(適切に)使用する方法は?

mreferre

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種類の資格情報があります。

  1. AWSクレジット
  2. なしAWSクレジット

AWSのクレジットを使用すると、すべてが簡単になります。IAMロールを作成し、dynamodbに権限を付与すれば、準備は完了です。

AWS以外の資格がある場合、最も安全なアプローチは次のとおりです。

  1. kmsサービスを使用して事前に資格情報を暗号化します。kms.encrypt('foo')
  2. 情報の暗号化バージョンを取得したら。どこにでもお気軽に保管してください。最も簡単な方法は、ラムダでハードコーディングすることです。
  3. 手順1で使用したkmsキーを使用して情報を復号化する権限をラムダIAMロールに追加します。
  4. 次に、ラムダが呼び出されるたびに、kmsを呼び出して情報を復号化します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

AndroidプロジェクトでAWS認証情報を処理する適切な方法は何ですか?

分類Dev

IAM認証情報を使用して、JDBC経由でSpringからAWS Auroraに接続することは適切ですか?

分類Dev

AWS Lambda関数でCognito認証済みユーザー情報を取得するにはどうすればよいですか?

分類Dev

AWS JSSDKでECS認証情報を使用する方法

分類Dev

PythonでAWS認証情報を設定する方法

分類Dev

AWS が 1 回のリクエストで認証情報を使用する方法

分類Dev

AWS ECRget-loginに新しい認証情報を使用する

分類Dev

AWS CodeBuildで実行するときにBoto3はどの認証情報を使用しますか?

分類Dev

AWS認証情報をDockerに渡す

分類Dev

変数の認証情報を使用してAWS SDKを実行するにはどうすればよいですか?

分類Dev

AWSで認証情報を取得するにはどうすればよいですか?AWS CognitoSDKまたはAWSSDKを使用する必要がありますか?

分類Dev

Visual Studio2017でDockerコンテナを実行するときにAWS認証情報を管理する方法

分類Dev

s3認証情報をAWSのPythonラムダ関数に渡すにはどうすればよいですか?

分類Dev

DataStax OpsCenterはAWS認証情報で何をしますか?

分類Dev

codedeployスクリプトを使用してAWS認証情報をEC2サーバーに渡す方法は?

分類Dev

GradleでAWSロール認証情報を取得する

分類Dev

AWS認証情報をKubernetesに提供するにはどうすればよいですか?

分類Dev

AWS Configureで認証情報をクリアするにはどうすればよいですか?

分類Dev

Serverless 1.0でaws認証情報を変更するにはどうすればよいですか?

分類Dev

botoで `aws`の認証情報を設定するにはどうすればよいですか?

分類Dev

ターミナルでAWS認証情報を編集するにはどうすればよいですか?

分類Dev

AWS認証情報をDockerコンテナに渡す最良の方法は何ですか?

分類Dev

AppSync:AWS_IAM認証を使用するときに$ contextでユーザー情報を取得します

分類Dev

現在のマシンのAWS認証情報を取得するにはどうすればよいですか?

分類Dev

一時的な認証情報を使用して Postman から AWS API Gateway にリクエストする方法

分類Dev

AWS Secrets ManagerはどこでAWS認証情報を取得しますか?

分類Dev

CognitoAuth認証オブジェクトをAWS-SDK認証情報に変換する方法

分類Dev

Cognito SDKを使用するときにAWS認証情報を提供する必要があるのはなぜですか?

分類Dev

JenkinsでAWS認証情報を使用してElasticBeanstalkにデプロイするにはどうすればよいですか?

Related 関連記事

  1. 1

    AndroidプロジェクトでAWS認証情報を処理する適切な方法は何ですか?

  2. 2

    IAM認証情報を使用して、JDBC経由でSpringからAWS Auroraに接続することは適切ですか?

  3. 3

    AWS Lambda関数でCognito認証済みユーザー情報を取得するにはどうすればよいですか?

  4. 4

    AWS JSSDKでECS認証情報を使用する方法

  5. 5

    PythonでAWS認証情報を設定する方法

  6. 6

    AWS が 1 回のリクエストで認証情報を使用する方法

  7. 7

    AWS ECRget-loginに新しい認証情報を使用する

  8. 8

    AWS CodeBuildで実行するときにBoto3はどの認証情報を使用しますか?

  9. 9

    AWS認証情報をDockerに渡す

  10. 10

    変数の認証情報を使用してAWS SDKを実行するにはどうすればよいですか?

  11. 11

    AWSで認証情報を取得するにはどうすればよいですか?AWS CognitoSDKまたはAWSSDKを使用する必要がありますか?

  12. 12

    Visual Studio2017でDockerコンテナを実行するときにAWS認証情報を管理する方法

  13. 13

    s3認証情報をAWSのPythonラムダ関数に渡すにはどうすればよいですか?

  14. 14

    DataStax OpsCenterはAWS認証情報で何をしますか?

  15. 15

    codedeployスクリプトを使用してAWS認証情報をEC2サーバーに渡す方法は?

  16. 16

    GradleでAWSロール認証情報を取得する

  17. 17

    AWS認証情報をKubernetesに提供するにはどうすればよいですか?

  18. 18

    AWS Configureで認証情報をクリアするにはどうすればよいですか?

  19. 19

    Serverless 1.0でaws認証情報を変更するにはどうすればよいですか?

  20. 20

    botoで `aws`の認証情報を設定するにはどうすればよいですか?

  21. 21

    ターミナルでAWS認証情報を編集するにはどうすればよいですか?

  22. 22

    AWS認証情報をDockerコンテナに渡す最良の方法は何ですか?

  23. 23

    AppSync:AWS_IAM認証を使用するときに$ contextでユーザー情報を取得します

  24. 24

    現在のマシンのAWS認証情報を取得するにはどうすればよいですか?

  25. 25

    一時的な認証情報を使用して Postman から AWS API Gateway にリクエストする方法

  26. 26

    AWS Secrets ManagerはどこでAWS認証情報を取得しますか?

  27. 27

    CognitoAuth認証オブジェクトをAWS-SDK認証情報に変換する方法

  28. 28

    Cognito SDKを使用するときにAWS認証情報を提供する必要があるのはなぜですか?

  29. 29

    JenkinsでAWS認証情報を使用してElasticBeanstalkにデプロイするにはどうすればよいですか?

ホットタグ

アーカイブ