web-dev-qa-db-ja.com

AWS Lambda関数のクロスアカウントロール

2つのAWSアカウント(AとB)があります。アカウントAには、アカウントBのリソースにアクセスする必要があるラムダ関数があります。正確には、アカウントAのラムダは、アカウントBでホストされているRoute53ゾーンのレコードを更新する必要があります。

S3とは異なり、Route53にはリソースアクセスポリシーが表示されません。だから私は少し迷っています。 IAMクロスアカウントの役割を試してみましたが、ラムダではうまくいかないようです。

アカウントAのラムダ関数がアカウントBのリソースにアクセスできるようにするにはどうすればよいですか?

13
Olivier

アカウントBにロールを作成し、ユーザー(アカウントA)がそれを引き受けることを許可できます。

  • AWS Lambda関数で使用されるアカウントAのロールを作成します。
  • アカウントBのロールを作成します。ロールタイプはクロスアカウントアクセスのロールです。アカウントBでRoute 53を使用するために必要なアクセス許可を割り当てます。また、アカウントAのロールのアクセス許可を追加して、このロールのAssumeRoleを呼び出します。
  • アカウントAのLambda関数は、アカウントBのロールでAssumeRoleを呼び出すことができます。これにより、アクセスに使用できる一時的な資格情報のセットが返されます。アカウントBのルート53。

見る:

これがチュートリアルの写真です。

Cross account access

19
John Rotenstein