tanoshisanpo
@tanoshisanpo

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

AWS 実行ロールとリソースベースのポリシーの違いについて

解決したいこと

AWS認定デベロッパーのサンプル問題の解説がわかりません。

問題

ある企業が、Amazon Elastic Container Service (Amazon ECS) でウェブアプリケーションバックエンドをホストしています。
アプリケーションの Amazon ECS タスクは、Application Load Balancer (ALB) の背後で実行されます。
このアプリケーションは、本番、テスト、開発の 3 つの環境をサポートしています。
アプリケーションは、ALB を使用してトラフィックを正しい環境に送信します。

同社は、ポート番号 (本番用ターゲットグループのポート 80、テスト用ターゲットグループのポート 8080、開発用ターゲットグループのポート 8081) 
に基づいてトラフィックを別のターゲットグループに転送する ALB に、 3 つのリスナールールを設定しました。

同社は、AWS Lambda 関数にサポートされた Amazon API Gateway API を使用して、アプリケーションバックエンドをサーバーレスアーキテクチャに移行することにしました。
同社は、ポート番号の代わりに URI パスパターンを使用して、目的の環境にアクセスすることを計画しています。
同社は、アプリケーションバックエンド用の Lambda 関数を作成しました。
各 Lambda 関数には、3 つのエイリアス (本番、テスト、開発) があります。

同社がプロセスを完了するために、次のステップを含むオプションはどれですか。

正解の回答

API Gateway API を作成し、Lambda プロキシ統合を使用するようにルートを設定する。
$ {stageVariables.LambdaAlias} という式と連結した、対応する Lambda 関数の Amazon Resource Name (ARN) をターゲットにする。
アクセス許可 lambda: InvokeFunction を追加して、Lambda リソースベースのポリシーを変更する。
本番、テスト、開発の各ステージを作成する。対応するステージに、LambdaAlias ステージ変数を追加する。

わからない回答

API Gateway API を作成し、Lambda プロキシ統合を使用するようにルートを設定する。
$ {stageVariables.LambdaAlias} という式と連結した、対応する Lambda 関数の Amazon Resource Name (ARN) をターゲットにする。
アクセス許可 apigateway: * を追加して Lambda 実行ロールを変更する。
本番、テスト、開発の各ステージを作成する。対応するステージに、LambdaAlias ステージ変数を追加する。

対応するステージに、LambdaAlias ステージ変数を追加する。←これが違うことは解説読んで理解しました

AWSの解説

Lambda 実行ロールを使用して、AWS リソースに Lambda アクセス許可を付与します。
リソースベースのポリシーでは、他のサービスで Lambda 関数を呼び出すことができます。

↑これがわかりません

Lambda 実行ロールと リソースベースのポリシーの違い

調べてわかったこと

  • どちらも AWS リソースへのアクセスを制御するために使用されるが、役割と適用範囲が異なる。
Lambda 実行ロール

役割 : Lambda 関数が AWS リソースにアクセスできるようにする
適用範囲 : 特定の Lambda 関数

リソースベースのポリシー

役割 : 特定の AWS リソースへのアクセスを制御する
適用範囲 : 特定の AWS リソース

まだわかんないです

アクセス許可 apigateway: * を追加して Lambda 実行ロールを変更する。←これは別に間違ってない?
アクセス許可 lambda: InvokeFunction を追加して、Lambda リソースベースのポリシーを変更する。これが必要ってことでしょうか...?

0

No Answers yet.

Your answer might help someone💌