Q70 — AWS SAA-C03 第13章
第 70/100 問 | ← 第13章
Q970. ある会社が、VPC内に新しいWebアプリケーションをAWS上に展開しようとしています。このアプリケーションは、アプリケーションデータを保存するためにAmazon DynamoDBへの安全かつ制御されたアクセスを必要としています。アプリケーションは、VPC内の複数の可用性ゾーンに配置された複数のAmazon EC2インスタンスで実行されます。同社は、EC2インスタンスがパブリックインターネットを経由せずにDynamoDBテーブルに安全にアクセスできるソリューションを設計したいと考えています。これらの要件を満たし、かつオーバーヘッドが最小となるソリューションはどれですか?(2つ選択)
- A. DynamoDBテーブルへのアクセス権限を持つIAMロールを作成し、そのロールをEC2インスタンスに関連付けます。 ✓
- B. IAMユーザーのアクセスキーをEC2インスタンスの環境変数に格納し、アプリケーションがそのアクセスキーを使用してDynamoDBにアクセスするように設定します。
- C. AWS Key Management Service (AWS KMS) を使用してDynamoDBの静止時暗号化を有効化します。EC2インスタンスをAWS KMS暗号化を使用するように設定します。
- D. EC2インスタンス上で実行されるアプリケーションを、DynamoDBテーブルへのアクセス権限を付与するIAMロールを一時的に引き受けるためにAWS Security Token Service (AWS STS) のAssumeRole APIを利用するように設定します。
- E. VPCエンドポイント(DynamoDB用)を使用して、EC2インスタンスとDynamoDB間のプライベートネットワークトラフィックを可能にします。 ✓
正解: A. DynamoDBテーブルへのアクセス権限を持つIAMロールを作成し、そのロールをEC2インスタンスに関連付けます。, E. VPCエンドポイント(DynamoDB用)を使用して、EC2インスタンスとDynamoDB間のプライベートネットワークトラフィックを可能にします。
解説
正解はAおよびEです。 A. DynamoDBテーブルへのアクセス権限を持つIAMロールを作成し、そのロールをEC2インスタンスに関連付けます。 ・これは推奨されるアプローチであり、EC2インスタンス上に認証情報(アクセスキーなど)を保存・管理することなく、DynamoDBへの安全なアクセスを実現できます。 ・EC2インスタンスにIAMロールを関連付けることで、その上で実行されるアプリケーションは、ロールの許可を利用してDynamoDBにアクセスできます。 E. VPCエンドポイント(DynamoDB用)を使用して、EC2インスタンスとDynamoDB間のプライベートネットワークトラフィックを可能にします。 ・これは必須の構成要素であり、EC2インスタンスがパブリックインターネットを経由せず、VPC内でのみDynamoDBに接続できるようにします。 ・このVPCエンドポイントと、Aで述べたIAMロールを組み合わせることで、セキュアかつオーバーヘッドの少ないDynamoDBアクセスが実現されます。 Bは、アクセスキーをEC2インスタンス上に格納・管理する必要があり、セキュリティリスクが高いため非推奨です。 Cは、DynamoDBにおける静止時データの暗号化を実現しますが、EC2インスタンスからのDynamoDBへのアクセス制御やネットワークの安全性には寄与しません。 Dは技術的には有効ですが、AWS STSへの追加API呼び出しが必要になるため、Aと比較してわずかに高いオーバーヘッドが発生します。 以上より、要件を最も効率的かつ安全に満たす2つのソリューションは、A(IAMロール)とE(DynamoDB用VPCエンドポイント)です。