AWS DVA-C02 第3章 練習問題(100問)

AWS DVA-C02(デベロッパー アソシエイト)第3章の本番形式の練習問題です。

  1. Q1. ある会社がサーバーレスアプリケーションを構築しています。このアプリケーションは、APIキーを使用してバックエンドアプリケーションと認証を行います。会社は、APIキーをAWS Lambda構成の一部として外部に保存したいと考えています。また、APIキーの暗号化に使用されるAWS Key Management Service(AWS KMS)キーを完全に制御し、承認されたエンティティのみが参照できるようにしたいと考えています。これらの要件を満たす解決策はどれですか?

    • A. APIキーをAWS Systems Manager Parameter Storeの文字列パラメータとして保存し、AWSが提供するデフォルトのAWS KMSキーを使用してAPIキーを暗号化する。
    • B. APIキーをAWS Lambdaの環境変数として保存し、AWS KMSのカスタマーマネージドキーを作成してAPIキーを暗号化する。
    • C. APIキーをコードリポジトリに保存し、AWSマネージドキーを使用してコードリポジトリを暗号化する。
    • D. APIキーをAmazon DynamoDBテーブルのレコードとして保存し、AWSマネージドキーを使用してAPIキーを暗号化する。

    この問題を見る →

  2. Q2. ある会社が、AWS CodePipeline上でアプリケーションの継続的インテグレーション/継続的デリバリー(CI/CD)パイプラインを実行しています。開発者は、単体テストを実行し、それらをパイプラインの一部として実行することを要求されており、その後にアーティファクトのテストを実行する必要があります。開発者は、単体テストをCI/CDパイプラインの一部としてどのように実装すべきですか?

    • A. 単体テストを実行するための別個のCodePipelineパイプラインを作成する。
    • B. AWS CodeBuildのビルド仕様を更新し、単体テストを実行するフェーズを含める。
    • C. 単体テストを実行するために、Amazon EC2インスタンスにAWS CodeDeployエージェントをインストールする。
    • D. AWS CodeCommitで単体テストを実行するためのテストブランチを作成する。

    この問題を見る →

  3. Q3. 開発者がAWS Lambda関数を作成しています。このLambda関数はAmazon Simple Queue Service (Amazon SQS)キューからメッセージを受信します。開発者は、関数の継続的インテグレーションおよび継続的デリバリー(CI/CD)パイプラインに単体テストを統合したいと考えています。開発者は、この関数をどのように単体テストすればよいでしょうか?

    • A. AWS CloudFormationテンプレートを作成し、そのテンプレートでSQSキューを作成してLambda関数をデプロイします。CI/CDプロセスで、このテンプレートを使用してスタックを作成します。デプロイ済みの関数を呼び出し、出力を検証します。
    • B. テスト用のSQSイベントを作成します。関数のCI/CDプロセスで、SQSキューからメッセージを取得するテストを使用します。
    • C. テスト用のSQSキューを作成します。アプリケーションの単体テストでこのSQSキューを使用します。CI/CDプロセスで単体テストを実行します。
    • D. CI/CDプロセスでaws lambda invokeコマンドとテストイベントを使用します。

    この問題を見る →

  4. Q4. ある企業がWebアプリケーションをAWSに移行し、ピーク時のワークロードに対応するためにオートスケーリングを活用したいと考えています。ソリューションアーキテクトは、オートスケーリングの最適な指標として同時ユーザー数を選定しました。 この情報に基づき、開発者は同時ユーザー数に基づくオートスケーリングを実現するために何を使用すべきでしょうか?

    • A. 同時ユーザー数のしきい値を満たした際に呼び出されるAmazon SNSトピック
    • B. Amazon CloudWatch NetworkInメトリクス
    • C. Amazon CloudFrontおよびAWSエッジサイト
    • D. 同時ユーザー数のカスタムAmazon CloudWatchメトリクス

    この問題を見る →

  5. Q5. ある開発者がAWS Serverless Application Model (AWS SAM)を用いて、AWS Lambda関数を含むサーバーレスアプリケーションを構築しています。アプリケーションをデプロイする際、開発者はデプロイ後の最初の10分間で、10%のトラフィックをアプリケーションの新バージョンに切り替えることを希望しています。問題が発生しなければ、その後すべてのトラフィックを新バージョンに切り替えます。この要件を満たすために、AWS SAMテンプレートに対してどのような変更を行うべきでしょうか?

    • A. DeploymentPreferenceTypeをCanary10Percent10Minutesに設定します。AutoPublishAliasプロパティをLambdaエイリアスに設定します。
    • B. DeploymentPreferenceTypeをLinear10PercentEvery10Minutesに設定します。AutoPublishAliasプロパティをLambdaエイリアスに設定します。
    • C. DeploymentPreferenceTypeをCanary10Percent10Minutesに設定します。PreTrafficおよびPostTrafficプロパティをLambdaエイリアスに設定します。
    • D. DeploymentPreferenceTypeをLinear10PercentEvery10Minutesに設定します。PreTrafficおよびPostTrafficプロパティをLambdaエイリアスに設定します。

    この問題を見る →

  6. Q6. ある企業がAWS Lambda関数を用いて、ファイルをAmazon S3バケットから自社のSFTPサービスに転送しています。Lambda関数は、ユーザー名およびパスワードなどの認証情報を用いてSFTPサービスに接続します。企業はLambda環境変数を用いてこれらの認証情報を格納しています。開発者は、ユーザー名およびパスワードの認証情報を暗号化して安全に管理したいと考えています。この要件を満たす解決策はどれでしょうか?

    • A. Lambda環境からユーザー認証情報を削除し、IAMデータベース認証を実装します。
    • B. ユーザー認証情報をLambda環境変数からAWS Systems Manager Parameter Storeに移動します。
    • C. ユーザー認証情報をLambda環境変数からAWS Key Management Service (AWS KMS)に移動します。
    • D. ユーザー認証情報をLambda環境から暗号化された.txtファイルに移動し、そのファイルをS3バケットに保存します。

    この問題を見る →

  7. Q7. ある開発者がAmazon Simple Queue Service (Amazon SQS)標準キューからメッセージを受信するAWS Lambda関数を作成しています。開発者は、Lambda関数が一部のメッセージを重複して処理していることに気づきました。開発者は、コスト効率の観点からこの問題をどのように解決すべきでしょうか?

    • A. Amazon SQSメッセージの重複排除IDを用いて、Amazon SQS標準キューをAmazon SQS FIFOキューに変更します。
    • B. デッドレターキュー(DLQ)を設定します。
    • C. AWS Lambda関数の最大同時実行数を1に設定します。
    • D. メッセージ処理をAmazon SQSではなくAmazon Kinesis Data Streamsを用いるように変更します。

    この問題を見る →

  8. Q8. ある開発者がAmazon API Gateway APIの問題をトラブルシューティングしています。クライアントがAPIのエンドポイントにアクセスしようとすると、HTTP 400レスポンスエラーが返されます。開発者は、これらのエラーの原因を特定するにはどうすればよいでしょうか?

    • A. API GatewayのAPI呼び出しログを受信するAmazon Kinesis Data Firehose配信ストリームを作成します。Amazon CloudWatch Logsを配信ストリームのターゲットとして設定します。
    • B. AWS CloudTrail Insightsを有効化し、トレースを作成します。APIのステージに対してトレースのAmazonリソース名(ARN)を指定します。
    • C. APIのステージに対してAWS X-Rayを有効化します。Amazon CloudWatch Logsロググループを作成します。APIのステージに対してロググループのAmazonリソース名(ARN)を指定します。
    • D. APIのステージに対して実行ログおよびアクセスログを有効化し、Amazon CloudWatch Logsに設定します。CloudWatch Logsロググループを作成します。APIのステージに対してロググループのAmazonリソース名(ARN)を指定します。

    この問題を見る →

  9. Q9. ある開発者に、Amazon DynamoDBテーブル内の項目が更新された際に呼び出されるAWS Lambda関数の作成が依頼されました。この関数は既に作成済みであり、Lambda実行ロールには適切な権限が付与済みです。テーブルにはAmazon DynamoDBストリームが有効化されていますが、関数は依然として呼び出されていません。どの選択肢が、DynamoDBテーブルの更新時にLambda関数を呼び出すようにするでしょうか?

    • A. DynamoDBテーブルのStreamViewTypeパラメータ値をNEW_AND_OLD_IMAGESに変更します。
    • B. Lambda関数に対してイベントソースマッピングを設定します。
    • C. Amazon Simple Notification Service (Amazon SNS)トピックをDynamoDBストリームにマッピングします。
    • D. Lambda関数の最大実行時間(タイムアウト)設定を増加させます。

    この問題を見る →

  10. Q10. トランザクション型アプリケーションがApplication Load Balancerの背後に配置されています。開発者は、非ピーク時にもアプリケーションに予期しない負荷が発生していることに気づきました。開発者は、このアプリケーションを利用するクライアントのIPアドレスのパターンを分析したいと考えています。開発者は、どのHTTPヘッダーを分析に使用すべきでしょうか?

    • A. X-Forwarded-Protoヘッダー
    • B. X-Forwarded-Hostヘッダー
    • C. X-Forwarded-Forヘッダー
    • D. X-Forwarded-Portヘッダー

    この問題を見る →

  11. Q11. 新しい項目が DynamoDB テーブルに書き込まれたときに、開発者は事前にプロビジョニングされたスループットに影響を与えることなくユーザーに通知するにはどうすればよいですか?

    • A. DynamoDB ストリームを設定して、ユーザーに SNS 通知を送信する Lambda 関数を起動します。
    • B. Amazon CloudWatch Events をスケジュールして、定期的に DynamoDB テーブルをスキャンする Lambda 関数を起動します。
    • C. 1 秒間隔で DynamoDB テーブルをポーリングし、ユーザーに SNS 通知を送信するポーリングアプリケーションを実行します。
    • D. DynamoDB 内に Lambda 通知機能を埋め込み、DynamoDB の変更時に埋め込まれた Lambda 機能を起動するように設定します。

    この問題を見る →

  12. Q12. 開発者はアプリケーションコードを記述し、チーム内の他の開発者と共有してフィードバックを得たいと考えています。共有されるアプリケーションコードは長期保存され、バージョン管理され、一括での変更履歴追跡が必要です。開発者はどの AWS サービスを使用すべきですか?

    • A. AWS CodeBuild
    • B. Amazon S3
    • C. AWS CodeCommit
    • D. AWS CloudFront

    この問題を見る →

  13. Q13. ある小売企業が AWS 上で実行されるサーバーレスアプリケーションを開発しています。このアプリケーションは AWS Lambda 関数を使用して注文成功率を計算し、結果を Amazon DynamoDB テーブルに保存します。開発者は、15 分ごとに Lambda 関数を効率的に呼び出す方法を求めています。この要件を最小限の開発工数で満たす解決策はどれですか?

    • A. Amazon EventBridge ルールを作成し、15 分ごとにルールを実行するレート式を指定します。Lambda 関数を EventBridge ルールのターゲットとして追加します。
    • B. AWS Systems Manager ドキュメントを作成し、Amazon EC2 で Lambda 関数を呼び出すスクリプトを含めます。Systems Manager Run Command タスクを用いて、シェルスクリプトを 15 分ごとに実行します。
    • C. AWS Step Functions のステートマシンを作成します。ステートマシンを、指定された間隔で Lambda 関数を呼び出す待機ステートを使用するよう設定します。間隔を 15 分に設定します。
    • D. 小型の Amazon EC2 インスタンスを設定し、15 分ごとに Lambda 関数を呼び出す cron ジョブを設定します。

    この問題を見る →

  14. Q14. ある企業が Amazon API Gateway REST API を通じてアクセスされるアプリケーションを開発しています。登録済みユーザーのみが特定の API リソースにアクセスできます。使用されるトークンは有効期限が短く、定期的に更新される必要があります。開発者はこれらの要件をどのように満たすべきですか?

    • A. Amazon Cognito Identity Pool を作成し、API Gateway で Amazon Cognito Authorizer を設定して、Identity Pool から生成された一時的な資格情報を使用します。
    • B. 各ユーザーに対して適切なトークンを持つデータベースレコードを作成・維持し、API Gateway で AWS Lambda Authorizer を使用します。
    • C. Amazon Cognito User Pool を作成し、API Gateway で Cognito Authorizer を設定し、ID トークンまたはアクセス・トークンを使用します。
    • D. 各 API ユーザーに対して IAM ユーザーを作成し、API に呼び出し権限ポリシーをアタッチし、API Gateway で IAM Authorizer を使用します。

    この問題を見る →

  15. Q15. あるアプリケーションが AWS X-Ray を使用して大量のトレースデータを生成しています。開発者は、ユーザーが指定したカスタム属性に基づいて返される結果を制限するフィルター式を使用したいと考えています。開発者は X-Ray のフィルター式を用いて結果をフィルタリングするにはどうすればよいですか?

    • A. セグメントドキュメントにカスタム属性をコメントとして追加します。
    • B. セグメントドキュメントにカスタム属性をメタデータとして追加します。
    • C. セグメントドキュメントにカスタム属性を新しいセグメントフィールドとして追加します。
    • D. カスタム属性に基づく新しいサンプリングルールを作成します。

    この問題を見る →

  16. Q16. ある企業が AWS CloudFormation を使用して、Amazon API Gateway REST API と AWS Lambda 関数が統合されたアプリケーションをデプロイしています。このアプリケーションは Amazon DynamoDB を用いてデータを永続化します。アプリケーションには開発、テスト、本番の 3 つの環境があり、各環境は独自の DynamoDB テーブルを使用しています。企業は本番環境への変更適用時に予期しない問題が発生しましたが、開発およびテスト環境では変更が正常に適用されました。開発者は、20% のトラフィックを新しい本番バージョンの API にルーティングし、残りの 80% を既存の本番環境にルーティングしたいと考えています。この解決策は、個々の顧客が経験するエラー数を最小限に抑える必要があります。開発者はこれらの要件を満たすためにどのような措置を講じるべきですか?

    • A. 本番環境の 20% の計画変更を更新します。新しい本番環境をデプロイします。結果を監視します。すべての計画変更をテストするためにこのプロセスを 5 回繰り返します。
    • B. Amazon Route 53 の DNS レコードエントリを更新し、加重ルーティングポリシーを使用します。重みを 80 に設定します。本番ドメインに 2 番目のレコードを追加します。2 番目のルーティングポリシーを加重ルーティングポリシーに変更し、その重みを 20 に設定します。2 番目のポリシーのエイリアスをテスト環境 API を使用するよう変更します。
    • C. REST API の前に Application Load Balancer (ALB) をデプロイします。Amazon Route 53 の本番 API レコードを変更し、トラフィックを ALB に向けます。本番およびテスト環境を ALB のターゲットとして登録し、それぞれ重みを 80% および 20% に設定します。
    • D. 本番環境 API に対してカナリア設定を構成します。カナリアデプロイへのトラフィック割合を 20% に変更します。本番環境に対して計画変更を適用し、デプロイします。

    この問題を見る →

  17. Q17. ある企業が AWS Elastic Beanstalk 上でバッチ処理アプリケーションをホストしており、インスタンスは最新版の Amazon Linux を実行しています。このアプリケーションは大規模なデータセットの並べ替えおよび処理を行います。最近数週間、トラフィックピーク時のアプリケーションパフォーマンスが著しく低下しています。開発者は、アプリケーションの問題がメモリ使用量に関連していると疑っています。Elastic Beanstalk コンソールを確認したところ、メモリ使用量の監視が行われていないことがわかりました。開発者は、アプリケーションのパフォーマンス問題に関するより詳細な情報を収集するにはどうすればよいですか?

    • A. Amazon CloudWatch Agent をポート 443 を使用して Amazon CloudWatch Logs にログをプッシュするよう設定します。
    • B. Elastic Beanstalk の .ebextensions ディレクトリを設定して、インスタンスのメモリ使用量を追跡します。
    • C. Amazon CloudWatch Agent を設定して、インスタンスのメモリ使用量を追跡します。
    • D. Amazon CloudWatch ダッシュボードを設定して、インスタンスのメモリ使用量を追跡します。

    この問題を見る →

  18. Q18. 開発者は、連携された ID ユーザーが AWS Key Management Service (AWS KMS) にアクセスできるよう、IAM ポリシードキュメントを作成しています。連携 IAM ロール名は FederatedIAMRole、ユーザー名は KeyAdmin です。開発者は、KMS キーポリシー内でプリンシパルをどのように設定すればこれらの要件を満たせますか?

    • A. "Principal": {"AWS": "arn:aws:sts::123456789012:role/FederatedIAMRole/KeyAdmin"}
    • B. "Principal": {"AWS": "arn:aws:sts:123456789012:user/FederatedIAMRole/KeyAdmin"}
    • C. "Principal": {"AWS": "arn:aws:sts::123456789012:user/KeyAdmin"}
    • D. "Principal": {"AWS": "arn:aws:sts::123456789012:assumed-role/FederatedIAMRole/KeyAdmin"}

    この問題を見る →

  19. Q19. AWS Lambdaで実行されるアプリケーションが、Amazon S3バケット内の特定の機密オブジェクトにアクセスする必要があります。最小権限の原則に基づき、一時的な資格情報のみを使用してS3バケットへのアクセスを許可する必要があります。開発者は、S3バケットへのアクセスを最も安全な方法で設定するにはどうすればよいですか?

    • A. アプリケーションコード内にS3オブジェクトへのアクセスに必要な資格情報をハードコードします。これらの資格情報を使用して必要なS3オブジェクトにアクセスします。
    • B. S3バケットへのアクセス権限を持つシークレットアクセスキーとアクセスキーIDを作成します。これらのキーとキーIDをAWS Secrets Managerに保存します。アプリケーションがSecrets Managerのシークレットを取得し、その資格情報を使用してS3オブジェクトにアクセスするように構成します。
    • C. Lambda関数の実行ロールを作成します。このロールに、S3バケット内の特定のオブジェクトへのアクセスを許可するポリシーをアタッチします。
    • D. S3バケットへのアクセス権限を持つシークレットアクセスキーとアクセスキーIDを作成します。これらのキーとキーIDをLambdaの環境変数として保存します。環境変数を使用して必要なS3オブジェクトにアクセスします。

    この問題を見る →

  20. Q20. 開発者がサーバーレスアーキテクチャを用いて、高度にセキュアな医療保健アプリケーションを構築しています。このアプリケーションは、一時データをAWS Lambda関数の/tmpストレージに書き込む必要があります。開発者は、これらのデータをどのように暗号化すべきですか?

    • A. Lambda関数の設定でAWS KMSキーを有効化してAmazon EBSボリュームの暗号化を有効にし、Lambda関数にアタッチされたすべてのストレージを暗号化します。
    • B. ロールおよびキーポリシーを設定してLambda関数がAWS KMSキーにアクセスできるようにします。KMSキーを使用してデータキーを生成し、/tmpストレージへの書き込み前にすべてのデータを暗号化します。
    • C. OpenSSLを用いてLambda起動時に対称暗号化キーを生成し、/tmpへの書き込み前にこのキーでデータを暗号化します。
    • D. ローカルのハードウェアセキュリティモジュール(HSM)でキーを生成し、Lambda関数がHSMからデータキーを要求して、すべてのリクエスト関数のデータを暗号化するために使用します。

    この問題を見る →

  21. Q21. 開発者がサーバーレスアプリケーションを設計しており、2つのAWS Lambda関数を用いて画像を処理します。1つ目のLambda関数はオブジェクトをAmazon S3バケットに保存し、関連するメタデータをAmazon DynamoDBテーブルに保存します。もう1つのLambda関数はDynamoDBテーブル内のメタデータを用いてS3バケットからオブジェクトを取得します。両方のLambda関数は複雑な計算を実行する同じPythonライブラリを使用しており、圧縮デプロイパッケージの最大サイズ制限に近づいています。開発者は、Lambdaデプロイパッケージのサイズを最小限に抑えつつ、運用上のオーバーヘッドを最も小さくするにはどうすればよいですか?

    • A. 各Pythonライブラリを個別のzipファイルアーカイブにパッケージ化します。各Lambda関数を独自のライブラリコピーとともにデプロイします。
    • B. 必要なPythonライブラリを用いてLambdaレイヤーを作成します。2つのLambda関数の両方でこのLambdaレイヤーを使用します。
    • C. 2つのLambda関数を1つのLambda関数に統合します。単一のzipファイルアーカイブとしてLambda関数をデプロイします。
    • D. PythonライブラリをS3バケットにダウンロードします。Lambda関数を、オブジェクトURLを参照するようにプログラムします。

    この問題を見る →

  22. Q22. 開発者が新しいファイルストレージアプリケーションをテスト中で、Amazon CloudFrontディストリビューションを用いてAmazon S3バケットからコンテンツを配信しています。このディストリビューションは、オリジンアクセスアイデンティティ(OAI)を使用してS3バケットにアクセスしています。S3バケットのバケットポリシーは、OAI以外のすべてのユーザーのアクセスを拒否しています。アプリケーションは、ログインページでユーザーに認証を要求し、その後署名付きCookieを用いてユーザーの個人ストレージディレクトリへのアクセスを許可します。開発者は、デフォルトのキャッシュ動作および制限付きビューアアクセス権限を用いてディストリビューションを構成し、オリジンをS3バケットに設定しました。しかし、開発者がログインページにアクセスしようとすると、403 Forbiddenエラーが返されます。開発者は、未認証ユーザーがログインページにアクセスできるようにする解決策を実装する必要があります。この解決策は、プライベートコンテンツのセキュリティを保証しなければなりません。どの解決策がこれらの要件を満たしますか?

    • A. デフォルトキャッシュ動作と同じオリジンを持つ第2のキャッシュ動作をディストリビューションに追加します。第2のキャッシュ動作のパスパターンをログインページのパスに設定し、ビューアアクセスを制限なしにします。デフォルトキャッシュ動作の設定は変更しません。
    • B. デフォルトキャッシュ動作と同じオリジンを持つ第2のキャッシュ動作をディストリビューションに追加します。第2のキャッシュ動作のパスパターンを「*」に設定し、ビューアアクセスを制限します。デフォルトキャッシュ動作のパスパターンをログインページのパスに変更し、ビューアアクセスを制限なしにします。
    • C. デフォルトキャッシュ動作に第2のオリジンをフェイルオーバー元として追加します。フェイルオーバー元をS3バケットに設定します。プライマリオリジンのパスパターンを「*」に設定し、ビューアアクセスを制限します。フェイルオーバー元のパスパターンをログインページのパスに設定し、ビューアアクセスを制限なしにします。
    • D. S3バケットにバケットポリシーを追加し、読み取りアクセスを許可します。ポリシーのリソースをS3バケット内のログインページオブジェクトのAmazonリソースネーム(ARN)に設定します。CloudFront機能をデフォルトキャッシュ動作に追加し、未承認のリクエストをログインページのS3 URLにリダイレクトします。

    この問題を見る →

  23. Q23. ある企業が、Amazon API GatewayのバックエンドとしてAWS Lambda関数をアプリケーション層の後ろに配置しています。高トラフィック状況下での注文処理のために、アプリケーションはフロントエンドからPOST APIを呼び出します。このPOST APIは非同期方式でLambda関数を呼び出します。多数のケースで、アプリケーションが注文を処理できませんでした。Lambdaアプリケーションのログには、エラーまたは失敗の記録が一切ありません。開発者は、この問題を解決するためにどのような措置を講じるべきですか?

    • A. API障害を特定するためにフロントエンドのログを確認します。ログファイル内のリクエストを手動で使用してPOST APIを呼び出します。
    • B. Lambdaのデッドレターキュー(DLQ)を作成・確認します。失敗した関数を調査し、イベントを再処理します。
    • C. Amazon CloudWatch内のLambdaログを確認し、潜在的なエラーを検索します。エラーを修正します。
    • D. API Gateway内でPOST APIのキャッシュを無効化します。

    この問題を見る →

  24. Q24. モバイルアプリケーションがブログ記事をAmazon DynamoDBテーブルに保存します。毎日多数の新規記事が追加され、各記事はテーブル内の個別のアイテムとして表現されます。モバイルアプリケーションは最新の投稿のみを必要とします。48時間を超える投稿は削除可能です。48時間を超える投稿を削除する最も経済的な方法は何ですか?

    • A. 各アイテムに対して、ブログ記事の作成時刻をタイムスタンプとして設定した新しいString型属性を追加します。BatchWriteItem API操作を用いて古い投稿を検索・削除するスクリプトを作成します。Amazon EC2インスタンス上で1時間ごとに実行されるスケジュールタスクとしてこのスクリプトを設定します。
    • B. 各アイテムに対して、ブログ記事の作成時刻をタイムスタンプとして設定した新しいString型属性を追加します。BatchWriteItem API操作を用いて古い投稿を検索・削除するスクリプトを作成します。このスクリプトをコンテナイメージにパッケージ化し、AWS Fargate上でAmazon Elastic Container Service(Amazon ECS)タスクとして5分ごとに実行するようにスケジュールします。
    • C. 各アイテムに対して、ブログ記事の作成時刻から48時間後の時刻を設定した新しいDate型属性を追加します。この新しい属性をソートキーとして使用するグローバルセカンダリインデックス(GSI)を作成します。GSIを参照し、BatchWriteItem API操作で期限切れアイテムを削除するAWS Lambda関数を作成します。Amazon CloudWatch Eventsを用いてこの関数を1分ごとにスケジュールします。
    • D. 各アイテムに対して、ブログ記事の作成時刻から48時間後の時刻を設定した新しいNumber型属性を追加します。DynamoDBテーブルを、この新しい属性を参照するTTL(Time To Live)機能を有効化するように設定します。

    この問題を見る →

  25. Q25. オフィスを複数持つ企業が、従業員勤怠票情報をAmazon DynamoDBテーブルに保存しています。各アイテムには従業員氏名、オフィス識別子、および累計日次勤務時間などの属性が含まれます。最も頻繁なクエリは、特定のオフィスの従業員をアルファベット順に並べたサブセットを取得するレポートです。DynamoDBテーブルの主キー設計のうち、パフォーマンスに最も大きな影響を与えるのはどれですか?

    • A. パーティションキーとしてオフィス識別子、ソートキーとして従業員氏名
    • B. パーティションキーとして従業員氏名、ソートキーとしてオフィス識別子
    • C. パーティションキーとして従業員氏名
    • D. パーティションキーとしてオフィス識別子

    この問題を見る →

  26. Q26. 開発者がAWS Lambda関数を実装しました。この関数はCPUリソースに制限されています。開発者は、関数が迅速にレスポンスを返すことを保証したいと考えています。開発者は、この関数のパフォーマンスをどのように最適化すべきですか?

    • A. 関数のCPUコア数を増加させます。
    • B. 関数のメモリを増加させます。
    • C. 関数の保留同時実行数を増加させます。
    • D. 関数のタイムアウト時間を増加させます。

    この問題を見る →

  27. Q27. ある開発者が、商品価格をAmazon DynamoDBに保存するWebアプリケーションを構築し、フロントエンドでAmazon ElastiCacheを使用しています。商品価格は頻繁に変更されます。販売者が商品価格を更新した後、商品リストに表示される価格が更新されないという苦情が寄せられています。この問題の原因として考えられるものは何ですか?

    • A. 商品価格が変更された際に、キャッシュが無効化されていません。
    • B. 書き込み透過(Write-Through)方式でElastiCacheクラスターから商品価格を取得しています。
    • C. DynamoDBテーブルの読み取りキャパシティが不足しています。
    • D. DynamoDBテーブルの書き込みキャパシティが不足しています。

    この問題を見る →

  28. Q28. 開発者が、Amazon Elastic Container Service (Amazon ECS)およびApplication Load Balancer (ALB)を用いたWeb APIを構築しました。Amazon CloudFrontディストリビューションは、このAPIをWebクライアントのオリジンとして使用しています。アプリケーションは、承認ヘッダー内に無効なJSON Web Token (JWT)を含む多数の不正なリクエストを受け取っています。開発者は、未認証リクエストを処理するようにアプリケーションを拡張済みです。開発者は、APIに対する未認証リクエストの数を削減するために、どのようにすべきでしょうか?

    • A. 承認ヘッダーが存在しない場合に401ステータスコードを返すよう、ALBにリクエストルーティングルールを追加する。
    • B. JWT検証を行うコンテナをECSタスク定義に追加し、そのコンテナをアプリケーションコンテナの依存関係として設定する。
    • C. CloudFrontディストリビューションに対してCloudFront Functionを作成し、関数内の暗号化モジュールを用いてJWTを検証する。
    • D. CloudFrontディストリビューションにAWS Lambdaカスタムオーソライザーを追加してJWTを検証する。

    この問題を見る →

  29. Q29. ある企業が、Pythonで記述されたAWS Lambda関数を用いて、Amazon DynamoDBテーブルにアイテムを追加しています。開発者は、DynamoDBテーブルへのレコード挿入を実行し、挿入失敗時に再試行するソリューションを実装する必要があります。この要件を最小限のコード変更で満たす最も適切なソリューションはどれですか?

    • A. Pythonコードをシェル経由でAWS CLIのPutItem操作を実行するように設定する。
    • B. DynamoDB HTTP APIを用いて、PythonからPutItem操作を呼び出す。
    • C. AWS Glueでアイテムをキューに入れ、それらをDynamoDBテーブルに投入する。
    • D. Python向けAWS SDK (boto3) を用いてPutItem操作を呼び出す。

    この問題を見る →

  30. Q30. 開発者がAWS CLIを用いてAmazon DynamoDBテーブルを作成しています。DynamoDBテーブルは、AWSが所有する暗号化キーによるサーバーサイド暗号化(SSE)を必須とします。開発者は、これらの要件を満たすためにDynamoDBテーブルをどのように作成すべきでしょうか?

    • A. AWS Key Management Service (AWS KMS) のカスタマーマネージドキーを作成し、DynamoDBテーブル作成時にKMSMasterKeyIdパラメータにそのキーのARNを指定する。
    • B. AWS Key Management Service (AWS KMS) のAWSマネージドキーを作成し、DynamoDBテーブル作成時にKMSMasterKeyIdパラメータにそのキーのARNを指定する。
    • C. AWSが所有するキーを作成し、DynamoDBテーブル作成時にKMSMasterKeyIdパラメータにそのキーのARNを指定する。
    • D. デフォルトの暗号化オプションを用いてDynamoDBテーブルを作成する。

    この問題を見る →

  31. Q31. ある企業がWebアプリケーションを運用しています。製品レビューの追跡のために、開発チームはAmazon DynamoDBテーブルを使用しています。各レコードには以下の項目が含まれます:Review ID(16桁のUUID)、Product IDおよびUser ID(他のテーブルを参照する16桁のUUID)、1〜5段階の製品評価、ユーザーによる任意のレビュー本文。パーティションキーはReview IDです。このテーブルで最も頻繁に実行されるクエリは、「特定の製品について評価値が最も高い上位10件のレビューを取得する」ことです。このクエリに対して最も高速な応答を提供するインデックスはどれですか?

    • A. パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするグローバルセカンダリインデックス(GSI)
    • B. パーティションキーをProduct ID、並べ替えキーをReview IDとするグローバルセカンダリインデックス(GSI)
    • C. パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするローカルセカンダリインデックス(LSI)
    • D. パーティションキーをReview ID、並べ替えキーをProduct IDとするローカルセカンダリインデックス(LSI)

    この問題を見る →

  32. Q32. ある企業が、同一VPC内に複数のAmazon VPCエンドポイントを所有しています。開発者は、これらのVPCエンドポイント経由でのみS3バケットへのアクセスを許可するAmazon S3バケットポリシーを設定する必要があります。この要件を満たすソリューションはどれですか?

    • A. 各VPCエンドポイントIDごとに複数のS3バケットポリシーを作成し、それぞれのポリシーでaws:SourceVpce値をStringNotEquals条件に使用する。
    • B. 単一のS3バケットポリシーを作成し、そのポリシーでaws:SourceVpc値とVPC IDをStringNotEquals条件に使用する。
    • C. 単一のS3バケットポリシーを作成し、そのポリシーでaws:SourceVpce値と「vpce*」ワイルドカードをStringNotEquals条件に使用する。
    • D. 単一のS3バケットポリシーを作成し、そのポリシーでStringNotEquals条件に複数のaws:sourceVpce値を含める。すべてのVPCエンドポイントに対してこれを繰り返す。

    この問題を見る →

  33. Q33. ある企業が、開発スピードと柔軟性を高めるために、AWSサービスを活用したスケーラブルなデータパイプラインソリューションを構築しています。このソリューションは、多様なソースから大量のデータを収集し、複数のビジネスルールおよび変換処理を経てデータを処理します。ソリューションは、ビジネスルールを順次実行すること、およびルール実行中にエラーが発生した場合にデータの再処理を可能にすることが求められます。企業は、このソリューションがスケーラブルであり、かつ最小限の運用コストで維持できることを望んでいます。これらの要件を満たすために、企業はどのAWSサービスを用いてデータフローのオーケストレーションを管理・自動化すべきでしょうか?

    • A. AWS Batch
    • B. AWS Step Functions
    • C. AWS Glue
    • D. AWS Lambda

    この問題を見る →

  34. Q34. 静的ウェブサイトがAmazon S3バケットにホストされています。このサイトのHTMLページの1つは、JavaScriptを用いて別のAmazon S3バケットから画像を読み込んでいます。しかし、ユーザーがウェブサイトを閲覧しても、これらの画像が表示されません。この問題の原因として考えられるものは何ですか?

    • A. 参照先のAmazon S3バケットが別のリージョンに配置されている。
    • B. 画像は、同じAmazon S3バケット内に保存する必要があります。
    • C. Amazon S3バケットが配置されているセキュリティグループは、80番ポートを開く必要があります。
    • D. Amazon S3バケットでクロスオリジンリソース共有(CORS)を有効にする必要があります。

    この問題を見る →

  35. Q35. トードは、Amazon EC2インスタンス上で実行されるアプリケーションがAmazon S3バケットに保存されたファイルにアクセスする必要があります。このアプリケーションはS3バケット内のオブジェクトを一覧表示し、ユーザーに表形式で表示します。テスト中に、開発者はアプリケーションが一覧表示に何も表示しないことに気づきました。この問題の最も安全な原因は何ですか?

    • A. EC2インスタンスにアタッチされたIAMインスタンスプロファイルを更新し、S3バケットに対するs3:*権限を含める。
    • B. EC2インスタンスにアタッチされたIAMインスタンスプロファイルを更新し、S3バケットに対するs3:ListBucket権限を含める。
    • C. 開発者ユーザーの権限を更新し、S3バケットに対するs3:ListBucket権限を含める。
    • D. S3バケットポリシーを更新し、s3:ListBucket権限を含め、Principal要素をEC2インスタンスのアカウント番号に設定して問題を解決する。

    この問題を見る →

  36. Q36. 開発者は4つのシャードを持つAmazon Kinesis Streamを設定し、1秒あたり最大2,500レコードを収集できるようにしました。Lambda関数がこれらのレコードを処理するように構成されています。 これらのレコードはどのような順序で処理されますか?

    • A. LambdaはLIFO(後入れ先出し)方式で、各レコードをストリームに投入した順序と逆の順序で処理します。
    • B. LambdaはFIFO(先入れ先出し)方式で、各レコードをストリームに投入した正確な順序で受信します。
    • C. LambdaはFIFO(先入れ先出し)方式で、各レコードをシャードに投入した正確な順序で受信します。ただし、シャード間の順序は保証されません。
    • D. 開発者はgetRecords APIを使用して、FIFO(先入れ先出し)、LIFO(後入れ先出し)、ランダム、または特定のレコードを要求するといった処理順序を選択できます。

    この問題を見る →

  37. Q37. 開発者はAWS LambdaとAmazon EventBridgeを使用してイベント駆動型アプリケーションを構築しています。Lambda関数はイベントをEventBridgeイベントバスにプッシュする必要があります。開発者はSDKを使用してEventBridgeのPutEvents操作を実行していますが、コード内で認証情報(クレデンシャル)を指定していません。Lambda関数をデプロイした後、開発者は関数の実行が失敗し、ログにAccessDeniedExceptionエラーが表示されることに気づきました。この問題を解決するにはどうすればよいですか?

    • A. Lambda関数とEventBridgeの間にVPCピアリング接続を設定する。
    • B. AWS認証情報を変更し、PutEvents EventBridge操作に対する権限を含める。
    • C. Lambda関数の実行ロールを変更し、PutEvents EventBridge操作に対する権限を含める。
    • D. Lambda関数にリソースベースポリシーを追加し、PutEvents EventBridge操作に対する権限を含める。

    この問題を見る →

  38. Q38. 開発者は、特定の機能をオン/オフできるWebアプリケーションを開発しています。開発者は、その機能が準備完了かつユーザーに公開する前に、終端ユーザーに対して機能を非表示にしたいと考えています。この要件を満たす解決策はどれですか?

    • A. AWS AppSyncでフィーチャーフラグ設定ファイルを作成し、フィーチャーフラグ値を設定ファイルに格納します。必要に応じてフィーチャーフラグを有効化/無効化します。
    • B. Amazon DynamoDBテーブルにプレリリースデータを格納します。テーブルでAmazon DynamoDB Streamsを有効化します。DynamoDB Streamsを使用して、非表示状態と表示状態を切り替えます。
    • C. AWS AppConfigでフィーチャーフラグ設定ファイルを作成し、フィーチャーフラグ値を設定ファイルに格納します。必要に応じてフィーチャーフラグを有効化/無効化します。
    • D. AWS Amplify DataStoreにプレリリースデータを格納します。Amplify DataStoreのクラウド同期機能を使用して、非表示状態と表示状態を切り替えます。

    この問題を見る →

  39. Q39. 開発者は、BGP(Border Gateway Protocol)ベースのAWS VPN接続を使用して、オンプレミス環境から自身のAWSアカウント内のAmazon EC2インスタンスへ接続しています。開発者は同一VPC内のサブネットAにあるEC2インスタンスにはアクセスできますが、サブネットBにあるEC2インスタンスにはアクセスできません。 開発者は、トラフィックがサブネットBに到達しているかどうかを確認するためにどのログを使用できますか?

    • A. VPNログ
    • B. BGPログ
    • C. VPCフローログ
    • D. AWS CloudTrailログ

    この問題を見る →

  40. Q40. 開発者は、既存のAWS Lambda関数の新バージョンをデプロイする際にリスクを低減したいと考えています。Lambda関数のテストのために、開発者は既存バージョンと新バージョンの間でトラフィックを分割したいと考えています。この要件を満たす解決策はどれですか?

    • A. Amazon Route 53で加重ルーティングポリシーを設定し、Lambda関数のバージョンを加重ルーティングポリシーに関連付けます。
    • B. 関数のエイリアスを作成し、エイリアスを2つのLambda関数バージョン間でトラフィックを分割するように設定します。
    • C. Lambda関数をターゲットとするApplication Load Balancer(ALB)を作成し、ALBを2つのLambda関数バージョン間でトラフィックを分割するように設定します。
    • D. Lambda関数の新バージョンを既存バージョン上のLambdaレイヤーとして作成し、関数を2つのレイヤー間でトラフィックを分割するように設定します。

    この問題を見る →

  41. Q41. 開発者は、アプリケーションによって生成された機密データをAmazon S3に保存しています。開発者は静的データを暗号化したいと考えており、またAWS Key Management Service(AWS KMS)キーの使用時刻および使用ユーザーを監査追跡するようポリシーで要求されています。

    • A. Amazon S3が管理するキーによるサーバー側暗号化(SSE-S3)
    • B. AWS KMSが管理するキーによるサーバー側暗号化(SSE-KMS)
    • C. 顧客が提供するキーによるサーバー側暗号化(SSE-C)
    • D. 自前で管理するキーによるサーバー側暗号化

    この問題を見る →

  42. Q42. 開発者は、インターネット接続デバイス上で実行されるアプリケーションを作成しています。このアプリケーションは、AWS Lambda関数としてデプロイされたRESTful APIにデータを送信します。アプリケーションは各APIリクエストに一意の識別子を割り当てます。アプリケーションからのAPIリクエスト量は、1日の任意の時点でランダムに増加する可能性があります。レート制限期間中、アプリケーションはリクエストの再試行が必要になる場合があります。APIは重複リクエストを処理できる必要がありますが、不整合やデータ損失を引き起こしてはなりません。

    • A. Amazon RDS for MySQLデータベースインスタンスを作成し、各リクエストの一意の識別子をデータベーステーブルに格納します。Lambda関数を変更して、リクエスト処理前にテーブル内の識別子をチェックします。
    • B. Amazon DynamoDBテーブルを作成し、各リクエストの一意の識別子をテーブルに格納します。Lambda関数を変更して、リクエスト処理前にテーブル内の識別子をチェックします。
    • C. Amazon DynamoDBテーブルを作成し、各リクエストの一意の識別子をテーブルに格納します。Lambda関数を変更して、重複リクエストを受け取った場合にクライアントエラー応答を返すようにします。
    • D. Amazon ElastiCache for Memcachedインスタンスを作成し、各リクエストの一意の識別子をキャッシュに格納します。Lambda関数を変更して、リクエスト処理前にキャッシュ内の識別子をチェックします。

    この問題を見る →

  43. Q43. 開発者が、価格データをAmazon DynamoDBに保存し、その前にAmazon ElastiCacheを配置したWebアプリケーションを構築しました。商品の価格は頻繁に変更されます。顧客が商品の価格を更新した後、商品リストに表示される価格が実際には変更されていないと不満を述べ始めました。この問題の原因は何ですか?

    • A. 商品の価格が変更されたときにキャッシュが無効化されない
    • B. 直書き型ElastiCacheクラスターを使用して商品の価格を取得する
    • C. DynamoDBテーブルの読み込みキャパシティが不足している
    • D. DynamoDBテーブルの書き込みキャパシティが不足している

    この問題を見る →

  44. Q44. ある企業がAWS上で動作する画像ストレージWebアプリケーションを運用しています。この企業は、Amazon EC2インスタンス上でアプリケーションをホストしており、これらのインスタンスはAuto Scalingグループに属しています。Auto ScalingグループはApplication Load Balancer(ALB)のターゲットグループとして機能し、販売用画像はAmazon S3に保存されています。企業は、新しい機能をテストするためのテストシステムを開発したいと考えています。この機能は、リクエストを別個のターゲットグループにルーティングし、そのターゲットグループがアプリケーションの新しいテストバージョンをホストするようにします。この要件を最小限の作業量で満たすことができる解決策はどれですか?

    • A. アプリケーションのテストバージョン用に新しいAuto Scalingグループおよびターゲットグループを作成します。ALBのルーティングルールを更新し、名前が「version」で値が「beta」であるCookieを検索する条件を含めます。テストシステムのコードを更新して、このCookieを使用してアプリケーションのテストバージョンをテストします。
    • B. アプリケーションのテストバージョン用に新しいALB、Auto Scalingグループ、およびターゲットグループを作成します。新しいALBエンドポイントに対して代替のAmazon Route 53レコードを設定します。テストシステムのリクエストで代替Route 53エンドポイントを使用して、アプリケーションのテストバージョンをテストします。
    • C. アプリケーションのテストバージョン用に新しいALB、Auto Scalingグループ、およびターゲットグループを作成します。Amazon CloudFrontおよびLambda@Edgeを使用して、どの具体的なリクエストを新しいALBに転送するかを判断します。CloudFrontエンドポイントを使用して、テストシステムのリクエストをテストアプリケーションのテストバージョンに送信します。
    • D. アプリケーションのテストバージョン用に新しいAuto Scalingグループおよびターゲットグループを作成します。ALBのルーティングルールを更新し、名前が「version」で値が「beta」であるCookieを検索する条件を含めます。Amazon CloudFrontおよびLambda@Edgeを使用してテストシステムのリクエストを更新し、ALBに送信される際に必要なCookieを追加します。

    この問題を見る →

  45. Q45. アプリケーションは画像をAmazon S3バケットにアップロードします。アプリケーションは、S3バケットにアップロードされた各画像のサイズを縮小してサムネイルに変換する必要があります。各サムネイルは、新しい名前で同じS3バケットにアップロードされます。開発者は、各S3オブジェクトのアップロードごとに自動的に処理を実行できるAWSサービスを構成できます。どのAWSサービスがこの要件を満たしますか?

    • A. Amazon EC2
    • B. Amazon Elastic Container Service (Amazon ECS)
    • C. AWS Elastic Beanstalk
    • D. AWS Lambda

    この問題を見る →

  46. Q46. ある開発者が、単一のダッシュボードから複数のソースからの銀行口座情報を表示できるアプリケーションを構築しています。開発者は、これらのソースからAPI資格情報を取得するプロセスを自動化しました。このプロセスは、AWS CloudFormationカスタムリソースに関連付けられたAWS Lambda関数を呼び出します。開発者は、最も少ない運用コストでAPI資格情報を保存したいと考えています。この要件を最も安全な方法で満たす解決策はどれですか?

    • A. CloudFormationテンプレートにAWS Secrets Manager GenerateSecretStringリソースを追加します。値を、CloudFormationリソースの新しい資格情報への参照に設定します。
    • B. Lambda関数内でAWS SDKのssm:PutParameter操作を使用し、資格情報をパラメータとして保存します。パラメータ値を新しい資格情報への参照に設定し、パラメータタイプをSecureStringに設定します。
    • C. CloudFormationテンプレートにAWS Systems Manager Parameter Storeリソースを追加します。CloudFormationリソースの値を新しい資格情報への参照に設定し、リソースのNoEcho属性をtrueに設定します。
    • D. Lambda関数内でAWS SDKのssm:PutParameter操作を使用し、資格情報をパラメータとして保存します。パラメータ値を新しい資格情報への参照に設定し、パラメータのNoEcho属性をtrueに設定します。

    この問題を見る →

  47. Q47. ある開発者が、ファイルをエクスポートするAWS Lambda関数を作成しています。実行中に、この関数は一時ファイルをステージングするために100 MBの一時ストレージを必要とします。これらのファイルは関数の完了後に不要になります。開発者は、これらの一時ファイルを最も効率的に処理するにはどうすればよいですか?

    • A. ファイルをAmazon Elastic Block Store(Amazon EBS)に保存し、Lambda関数の終了時にファイルを削除します。
    • B. ファイルをAmazon Elastic File System(Amazon EFS)にコピーし、Lambda関数の終了時にファイルを削除します。
    • C. ファイルを/tmpディレクトリに保存し、Lambda関数の終了時にファイルを削除します。
    • D. ファイルを、ファイルを削除するライフサイクルポリシーを持つAmazon S3バケットにコピーします。

    この問題を見る →

  48. Q48. ある企業はパートナーから食品注文を受け取っています。この企業は、Amazon API Gateway APIおよびAWS Lambda統合を使用したマイクロサービスアプリケーションを所有しています。各パートナーは、API Gatewayによって公開されたカスタムAPIを呼び出して注文を送信します。API呼び出しは、注文を処理する共有Lambda関数を呼び出します。Lambda関数が注文を処理した後、パートナーは通知を受ける必要があります。各パートナーは、自身の注文の更新のみを受け取る必要があります。企業は、将来新しいパートナーを追加する際に、コード変更を可能な限り最小限に抑えたいと考えています。この要件を最も拡張性の高い方法で満たす解決策はどれですか?

    • A. 各パートナーごとに異なるAmazon Simple Notification Service(Amazon SNS)トピックを作成します。Lambda関数を構成して、各パートナーのメッセージを対応するSNSトピックにパブリッシュします。
    • B. 各パートナーごとに異なるLambda関数を作成します。Lambda関数を構成して、各パートナーのサービスエンドポイントに直接通知します。
    • C. Amazon Simple Notification Service(Amazon SNS)トピックを作成します。Lambda関数を構成して、特定の属性を持つメッセージをSNSトピックにパブリッシュします。各パートナーをSNSトピックにサブスクライブし、適切なフィルタリングポリシーをトピックのサブスクリプションに適用します。
    • D. Amazon Simple Notification Service(Amazon SNS)トピックを作成します。すべてのパートナーをSNSトピックにサブスクライブします。

    この問題を見る →

  49. Q49. 企業はus-west-1リージョンでアプリケーションをホストしています。企業はus-east-1リージョンに冗長性を追加したいと考えています。アプリケーションのシークレットはus-west-1のAWS Secrets Managerに保存されています。開発者はこれらのシークレットをus-east-1に複製する必要があります。この要件を満たす解決策はどれですか?

    • A. 各シークレットに対してシークレット複製を構成します。us-east-1を複製リージョンとして追加します。複製されたシークレットを暗号化するためにus-east-1にあるAWS Key Management Service(AWS KMS)キーを選択します。
    • B. us-east-1で各シークレットの新しいシークレットを作成します。us-east-1でシークレット複製を構成します。ソースをus-west-1の対応するシークレットに設定します。複製されたシークレットを暗号化するためにus-west-1にあるAWS Key Management Service(AWS KMS)キーを選択します。
    • C. 各シークレットに対して複製ルールを作成します。us-east-1をターゲットリージョンとして設定します。シークレットローテーション期間中にルールを実行するように構成します。複製されたシークレットを暗号化するためにus-east-1にあるAWS Key Management Service(AWS KMS)キーを選択します。
    • D. 各シークレットに対してSecrets Managerライフサイクルルールを作成し、シークレットをus-west-1の新しいAmazon S3バケットに複製します。S3複製ルールを構成して、シークレットをus-east-1に複製します。

    この問題を見る →

  50. Q50. ある企業がAWS上でWebアプリケーションを構築しています。顧客がリクエストを送信すると、アプリケーションはレポートを生成し、その後一定時間内に顧客にレポートを配信します。レポートは顧客に対して8時間利用可能である必要があります。一部のレポートのサイズは1 MBを超えます。各レポートは、特定の顧客向けに固有です。アプリケーションは、2日以上前のレポートを削除する必要があります。この要件を運用オーバーヘッドが最小となる方法で満たす解決策はどれですか?

    • A. レポートを生成し、指定されたTTLを持つAmazon DynamoDBアイテムとして保存します。レポートを含むURLを生成し、DynamoDBからレポートを取得します。Webアプリケーションを通じて顧客にURLを提供します。
    • B. レポートを生成し、サーバーサイド暗号化を使用したAmazon S3バケットに保存します。レポートをAmazon Simple Notification Service(Amazon SNS)メッセージに添付します。顧客がAmazon SNSからの電子メール通知を受信できるようにサブスクライブします。
    • C. レポートを生成し、サーバーサイド暗号化を使用したAmazon S3バケットに保存します。有効期限付きの事前署名URLを生成します。Webアプリケーションを通じて顧客にURLを提供します。古いレポートを削除するためのライフサイクル設定ルールをS3バケットに追加します。
    • D. レポートを生成し、日付スタンプを持つAmazon RDSデータベースに保存します。レポートを取得するURLを生成します。Webアプリケーションを通じて顧客にURLを提供します。日付スタンプが有効期限を過ぎたデータベースレコードを削除するためのAWS Lambda関数を毎時実行するようスケジュールします。

    この問題を見る →

  51. Q51. ある会社が、製品カタログを含むWebアプリケーションを運用しています。このカタログは、DOC-EXAMPLE-BUCKETという名前のAmazon S3バケットに格納されています。このアプリケーションは、S3バケット内のオブジェクトを一覧表示でき、またIAMポリシーを通じてオブジェクトをダウンロードできる必要があります。これらの要件を満たすために必要な最小限のアクセス権限を許可するポリシーはどれですか?

    • A. {"Version": "2012-10-17","Statement":[{"Effect": "Allow","Action": "s3:ListBucket","Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET"}]}
    • B. {"Version": "2012-10-17","Statement": [{"Effect": "Allow","Action": "s3:ListBucket","Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET"}]}
    • C. {"version": "2012-10-17","statement":[{"Effect": "Allow","Action": "s3:ListBucket","Resonrce": "arn:aws:s3:::DOC-EXAMPLB-BUCKET"}]}
    • D. {"version":"2012-10-17","Statement": [{"Ettect": "Al1ow","Action":["s3:DisLBuckel"],"Resource":"arn:aws:s3:::DOC-EXAMPLE-BUCKET"}]}

    この問題を見る →

  52. Q52. ある会社が、複数のAWSリージョンにまたがって実行されるアプリケーションを運用しています。このアプリケーションは不規則な間隔でパフォーマンスの問題を示すことがあります。開発者は、AWS X-Rayを用いてアプリケーションの分散トレーシングを実装し、パフォーマンス問題の根本原因を特定する必要があります。この要件を満たすために、開発者は何を行うべきですか?

    • A. X-Rayコンソールを使用して、AWSサービスおよびユーザー定義サービスにアノテーションを追加します。
    • B. X-RayがAWSサービスに対して自動的に追加するリージョンアノテーションを利用します。ユーザー定義サービスには手動でリージョンアノテーションを追加します。
    • C. X-Rayデーモンを使用して、AWSサービスおよびユーザー定義サービスにアノテーションを追加します。
    • D. X-Rayがユーザー定義サービスに対して自動的に追加するリージョンアノテーションを利用します。AWSサービスに対してリージョンアノテーションを追加するようX-Rayを設定します。

    この問題を見る →

  53. Q53. ある会社が、AWS Lambda関数を用いたサーバーレスアプリケーションを開発しています。この会社は、開発環境でLambda関数をテストするためのテストイベントを作成したいと考えています。テストイベントは、IAM開発者グループに所属するすべてのIAMユーザーが利用できるようにする必要があります。この要件を満たす解決策はどれですか?

    • A. Amazon S3内にテストイベントをJSONオブジェクトとして作成・保存し、すべてのIAMユーザーがそのS3バケットにアクセスできるようにします。
    • B. テストイベントを作成し、イベント共有設定を有効にしてテストイベントを共有可能にします。
    • C. Amazon DynamoDB内にテストイベントを作成・保存し、IAMロールによるDynamoDBへのアクセスを許可します。
    • D. テストイベントを作成し、イベント共有設定を有効にしてテストイベントを非公開にします。

    この問題を見る →

  54. Q54. ある会社の新しいモバイルアプリケーションはAmazon API Gatewayを使用しています。開発チームがAPIの新バージョンを完成させた際、開発者は安全かつ透過的にAPIの変更を展開する必要があります。開発者がAPI Gatewayを用いて限定されたユーザー数に対して新APIバージョンを展開するための最もシンプルな解決策は何ですか?

    • A. API Gateway内で新しいAPIを作成し、Amazon Route 53の加重ルーティングポリシーを用いて一部のトラフィックを新APIにルーティングします。
    • B. 新APIバージョンを検証し、予想される利用率が最も低い時間帯に本番環境へ展開します。
    • C. Amazon CloudWatchアラームを実装し、観測されたHTTP 500ステータスコード率が事前定義されたしきい値を超えた場合にロールバックをトリガーします。
    • D. API Gateway内でカナリアリリース展開オプションを使用し、canarySettingsを設定して一定割合のAPIトラフィックを新バージョンにルーティングします。

    この問題を見る →

  55. Q55. 開発者が、Amazon S3にアップロードされたファイルサイズが50MBを超える場合に、Amazon Simple Notification Service (Amazon SNS) を用いて通知を送信するAWS Lambda関数を作成しました。開発者はCLIを用いてデプロイおよびテストを完了しました。しかし、S3バケットに3,000MBのファイルをアップロードしても、Lambda関数が起動しません。Lambda関数が起動しない可能性のある原因はどれですか?

    • A. 1,000MBを超えるファイルについては、S3イベント通知が発火しません。
    • B. Lambda関数のリソースベースポリシーに、Amazon S3からの呼び出しに必要な権限が含まれていません。
    • C. Lambda関数はS3イベントから直接呼び出すことができません。
    • D. S3バケットはパブリックである必要があります。

    この問題を見る →

  56. Q56. 開発チームはAWS Elastic Beanstalkを用いてアプリケーションをデプロイしています。開発チームは、アプリケーションバージョン数を25に制限するアプリケーションバージョンライフサイクルポリシーを設定しました。しかし、アプリケーションバージョンライフサイクルポリシーを適用しても、ソースパッケージはAmazon S3ソースバケットから削除されません。Elastic Beanstalkのアプリケーションバージョンライフサイクル設定で、開発チームがS3バケット内にソースコードを保持するために行うべきことは何ですか?

    • A. ソースパッケージS3バケットでバージョン管理を有効化します。
    • B. ソースパッケージのアーカイブを回避するため、S3バケットのライフサイクルポリシーを無効化します。
    • C. Elastic Beanstalkアプリケーションバージョンライフサイクルポリシーを更新し、バージョン上限を50に増やします。
    • D. Elastic Beanstalkアプリケーションバージョンライフサイクルポリシーを更新し、Amazon S3内にソースパッケージを保持するように設定します。

    この問題を見る →

  57. Q57. ある会社が、Amazon CognitoユーザープールをIDプロバイダーとして使用するアプリケーションを運用しています。この会社は、ユーザーレコードへのアクセスを安全に保つ必要があります。すでに多要素認証(MFA)を設定済みです。さらに、ユーザーが毎回ログインする際に、メールでログイン活動通知を送信したいと考えています。この要件を最も効率的に満たす解決策はどれですか?

    • A. Amazon Simple Email Service (Amazon SES) を用いてメール通知を送信するAWS Lambda関数を作成します。この関数を呼び出すためのAmazon API Gateway APIを追加します。ログイン確認を受け取った後、クライアント側からAPIを呼び出します。
    • B. Amazon Simple Email Service (Amazon SES) を用いてメール通知を送信するAWS Lambda関数を作成します。この関数にAmazon Cognitoの「認証後」Lambdaトリガーを追加します。
    • C. Amazon Simple Email Service (Amazon SES) を用いてメール通知を送信するAWS Lambda関数を作成します。Amazon CloudWatch Logsのログサブスクリプションフィルターを作成し、ログイン状態に基づいてこの関数を呼び出します。
    • D. Amazon CognitoがすべてのログをAmazon Kinesis Data Firehoseにストリーミングするよう設定します。ストリーミングされたログを処理し、各ユーザーのログイン状態に基づいてメール通知を送信するAWS Lambda関数を作成します。

    この問題を見る →

  58. Q58. ある会社が、Amazon API Gateway APIを用いたモバイルアプリケーションを開発しています。このアプリケーションはAWS Lambdaをバックエンドとして使用します。本番環境へのコード展開前に、専用の監視可能なテスト環境でコードをテストする必要があります。この要件を満たす解決策はどれですか?

    • A. API Gatewayで単一のステージを使用します。各環境ごとにLambda関数を作成し、APIクライアントが環境と特定のLambda関数を示すクエリパラメーターを送信するよう設定します。
    • B. API Gatewayで複数のステージを使用します。すべての環境で単一のLambda関数を作成し、Lambda環境変数に基づいて各環境向けの異なるコードブロックをLambda関数内に実装します。
    • C. API Gatewayで複数のステージを使用します。各環境ごとにLambda関数を作成し、API Gatewayのステージ変数を設定して、各環境のLambda関数にトラフィックをルーティングします。
    • D. API Gatewayで単一のステージを使用します。APIクライアントが環境を示すクエリパラメーターを送信するよう設定し、Lambda関数内でクエリパラメーターの値に応じて各環境向けの異なるコードブロックを実装します。

    この問題を見る →

  59. Q59. ある開発者は、Amazon SQS API を使用して Amazon Simple Queue Service (Amazon SQS) キューからメッセージを読み取る AWS Lambda 関数を実装しています。バックエンドの依存関係に起因するランダムな障害により、Lambda 関数がすべてのメッセージを正常に処理できていません。開発者は、Lambda 関数の信頼性を高め、バックエンドの依存関係が失敗した場合でも各メッセージを確実に処理できるようにする必要があります。 この要件を最小限の労力で満たす最も適切な解決策はどれですか?

    • A. サードパーティ依存関係への呼び出しを例外処理ブロック内に移動します。例外ハンドラ内でサードパーティ依存関係の障害がキャッチされた場合、メッセージをSQSキューに再書き込みします。
    • B. Lambda 関数内のコードを更新し、SQS SDK の ReceiveMessage 関数呼び出しを削除します。Lambda 関数を SQS キューをイベントソースとして使用するように設定します。SQS キューの再ドライブポリシーの maxReceiveCount 値を少なくとも 5 に設定します。
    • C. デッドレターキューとして機能する第2の SQS キューを作成します。元の SQS キューに再ドライブポリシーを設定し、失敗したメッセージをデッドレターキューに送信します。Lambda 関数を変更し、2つのキューからメッセージを読み取るようにします。
    • D. デッドレターキューとして機能する第2の SQS キューを作成します。サードパーティ依存関係への呼び出しを例外処理ブロック内に移動します。例外ハンドラ内でサードパーティ依存関係の失敗がキャッチされた場合、メッセージをデッドレターキューに書き込みます。

    この問題を見る →

  60. Q60. 開発者は Amazon DynamoDB を使用するアプリケーションを構築しています。開発者は、API 呼び出しを通じてデータベースから特定のアイテムを取得したいと考えています。この DynamoDB API 呼び出しは、データベースへの影響を最小限に抑えつつ、これらの要件を満たす必要があります。

    • A. BatchGetItem
    • B. GetItem
    • C. Scan
    • D. Query

    この問題を見る →

  61. Q61. ある企業が新しいサーバーレスユーザーポータルを最近デプロイしました。ユーザーはポータルの一部が非常に遅いと報告しています。初期分析の結果、問題の原因は Amazon API Gateway のエンドポイントである可能性が高いことが判明しました。このエンドポイントは AWS Lambda 関数と統合されています。さらに、その Lambda 関数は他の API や AWS サービスと相互作用しています。開発者は、運用上のベストプラクティスを用いて、応答時間の増加の根本原因を特定するにはどうすればよいでしょうか?

    • A. 各外部リクエストの前後で高精度タイムスタンプを含むログ記録文を追加して Lambda 関数を更新します。更新後の Lambda 関数をデプロイします。十分な使用データが蓄積された後、Lambda 関数の Amazon CloudWatch ログを確認し、応答時間の増加の可能性のある原因を特定します。
    • B. AWS X-Ray SDK を使用して Lambda 関数にインストルメンテーションを追加します。HTTP および HTTPS インターセプター、および SDK クライアントハンドラーを追加します。更新後の Lambda 関数をデプロイします。X-Ray トレーシングを有効にします。十分な使用データが蓄積された後、X-Ray サービスマップを使用して平均応答時間を確認し、可能性のある原因を特定します。
    • C. 指標リソースブラウザを使用して Lambda 関数の Amazon CloudWatch 指標を表示します。継続時間指標および制限指標に異常検出を適用します。異常を確認して、可能性のある原因を特定します。
    • D. Amazon CloudWatch Synthetics を使用して新しいカナリアを作成します。カナリアで AWS X-Ray トレーシングを有効にします。カナリアをユーザーポータルのスキャン用に設定します。十分な使用データが蓄積された後、CloudWatch Synthetics カナリアダッシュボードでカナリアの指標を確認します。

    この問題を見る →

  62. Q62. 写真共有アプリケーションは Amazon S3 を使用して画像ファイルを保存しています。すべてのユーザー画像は、不適切なコンテンツを防止するために企業による人間審査を受ける必要があります。審査はユーザー投稿後1〜24時間以内に完了し、結果は S3 オブジェクトキーを主キーとして使用する Amazon DynamoDB テーブルに保存されます。REST API を通じてこのデータベース項目を照会できます。アプリケーション開発者は、すべての S3 オブジェクトに審査結果のタグを自動付与する自動化フローを実装したいと考えています。開発者は、これらの要件を最も効率的に満たすために何を行うべきでしょうか?

    • A. s3:ObjectCreated イベントタイプに応答して実行される AWS Lambda 関数を作成します。S3 キーを Amazon Simple Queue Service (Amazon SQS) キューに書き込み、可視性タイムアウトを24時間に設定します。キューから項目を読み取る第2の Lambda 関数を作成・設定します。DynamoDB テーブルから各項目の結果を取得し、それぞれの S3 オブジェクトに適切なタグを付与します。
    • B. s3:ObjectCreated イベントタイプに応答して実行される AWS Lambda 関数を作成します。この関数を AWS Step Functions の標準ワークフローに統合します。AWS Step Functions の Wait ステートを定義し、値を24時間に設定します。Wait ステート終了後に審査結果を取得し、S3 オブジェクトに適切なタグを付与する第2の Lambda 関数を作成・設定します。
    • C. すべての未タグ付け S3 オブジェクトを読み込む AWS Lambda 関数を作成します。REST API から各項目の結果を取得し、それぞれの S3 オブジェクトに適切なタグを付与します。定期的に実行される Amazon EventBridge ルールを作成・設定します。Lambda 関数を EventBridge ルールのターゲットとして設定します。
    • D. Amazon EC2 インスタンスを起動します。外部データベースの結果を使用して S3 オブジェクトにタグを付与するスクリプトを EC2 インスタンスにデプロイします。crontab ファイルを設定してスクリプトを定期実行します。

    この問題を見る →

  63. Q63. 開発者は、外部 API からデータを取得し、処理して Amazon S3 に結果を保存するアプリケーションを構築しました。開発者は、必要なすべての依存関係を含むコンテナイメージを作成し、コンテナとしてアプリケーションを実行できるようにしました。このアプリケーションはローカルで実行され、最大の CPU および RAM リソースを必要とします。開発者はすでに Amazon ECS クラスターを作成済みです。開発者は、Amazon Elastic Container Service (Amazon ECS) でこのアプリケーションを毎時実行したいと考えています。この要件を最小限のインフラストラクチャ管理オーバーヘッドで満たす解決策はどれですか?

    • A. インスタンスを管理するためのキャパシティープロバイダーを追加します。
    • B. アプリケーションを実行する Amazon EC2 インスタンスを追加します。
    • C. AWS Fargate 起動タイプを使用するタスク定義を定義します。
    • D. Amazon ECS クラスターを作成し、アプリケーションを実行するためのマネージドノードグループ機能を追加します。

    この問題を見る →

  64. Q64. 開発者は Python で記述された AWS Lambda 関数を作成しました。この Lambda 関数は Amazon S3 のオブジェクトからデータを読み取り、Amazon DynamoDB テーブルにデータを書き込みます。 S3 オブジェクトが作成された際、S3 イベント通知によってこの関数が正常に呼び出されます。しかし、この関数は DynamoDB テーブルへの書き込みを試みた際に失敗します。 この問題の最も可能性の高い原因は何ですか?

    • A. Lambda 関数の同時実行制限を超えました。
    • B. DynamoDB テーブルは書き込みをサポートするためにグローバルセカンダリインデックス(GSI)を必要とします。
    • C. Lambda 関数には DynamoDB への書き込み権限がない IAM 権限が付与されていません。
    • D. DynamoDB テーブルは Lambda 関数と同じ可用性ゾーンで実行されていません。

    この問題を見る →

  65. Q65. ある企業は、AWS Lambda 関数と Amazon S3 トリガーを使用して、S3 バケットにアップロードされた画像を処理しています。開発チームは、単一の AWS アカウント内で複数の環境を設定しました。最近の本番環境へのデプロイ後、開発チームは開発用 S3 バケットからの呼び出しが本番環境の Lambda 関数を呼び出していることに気づきました。これらの呼び出しにより、本番環境の Lambda 関数が開発用 S3 ファイルを意図せず実行していました。開発チームは、このような呼び出しを阻止する必要があります。また、セキュリティ上のベストプラクティスに従う必要があります。 この要件を満たす解決策はどれですか?

    • A. 本番環境 Lambda 関数の Lambda 実行ロールを更新し、実行ロールが本番環境 S3 バケットからのみ読み取りを許可するポリシーを追加します。
    • B. 開発環境と本番環境を別々の AWS アカウントに移動します。各 Lambda 関数にリソースポリシーを追加し、同一アカウント内の S3 バケットからのみ呼び出しを許可します。
    • C. 本番環境 Lambda 関数にリソースポリシーを追加し、本番環境 S3 バケットからのみ呼び出しを許可します。
    • D. 開発環境と本番環境を別々の AWS アカウントに移動します。各関数の Lambda 実行ロールを更新し、同一アカウント内の S3 バケットからの読み取りを許可するポリシーを追加します。

    この問題を見る →

  66. Q66. 法的要件により、金融機関は顧客の生データを10年間保管する必要があります。完全な記録には個人識別情報(PII)が含まれます。地元の規制によると、PII は当社内の特定の人物のみが利用可能であり、第三者と共有してはなりません。同社は、PII を共有せずに、記録を第三者組織に提供して統計分析を行う必要があります。 開発者は、生の不変記録を Amazon S3 に保存したいと考えています。S3 ドキュメントにアクセスする人物に応じて、ドキュメントをそのまま返すか、すべての PII を削除する必要があります。開発者は、ドキュメントから PII を削除する AWS Lambda 関数(removePii)を作成しました。 開発者は、PII の要件を満たしつつ、ドキュメントのコピーを1つだけ保持するにはどうすればよいでしょうか?

    • A. S3 イベント通知を設定し、S3 GET リクエスト時に removePii 関数を呼び出します。PII を含まないオブジェクトにアクセスするために GET リクエストで Amazon S3 を呼び出します。
    • B. S3 イベント通知を設定し、S3 PUT リクエスト時に removePii 関数を呼び出します。PII を含まないオブジェクトにアクセスするために PUT リクエストで Amazon S3 を呼び出します。
    • C. S3 コンソールから S3 オブジェクト Lambda アクセスポイントを作成します。removePii 関数を選択します。PII を含まないオブジェクトにアクセスするために S3 アクセスポイントを使用します。
    • D. S3 コンソールから S3 アクセスポイントを作成します。GetObjectLegalHold S3 API 関数をアクセスポイント名で呼び出します。PII を含まないオブジェクトにアクセスするために removePii 関数名を渡します。

    この問題を見る →

  67. Q67. 開発者は、Amazon S3 にオブジェクトがアップロードされたときに呼び出される AWS Lambda 関数を実装しています。開発者は、この関数を本番の AWS アカウントにデプロイする前に、ローカル開発マシン上で Lambda 関数をテストしたいと考えています。この要件を満たすために、最も少ない運用負荷で実現できる解決策はどれですか?

    • A. aws s3api put-object CLI コマンドを使用してオブジェクトを Amazon S3 にアップロードします。S3 イベントからのローカル Lambda 呼び出しを待ちます。
    • B. PutObject S3 イベント用のサンプル JSON テキストファイルを作成します。ローカルで Lambda 関数を呼び出します。aws lambda invoke CLI コマンドを使用し、JSON ファイルと Lambda 関数名をパラメータとして指定します。
    • C. sam local start-lambda CLI コマンドを使用して Lambda を起動します。sam local generate-event s3 put CLI コマンドを使用して Lambda テスト用の JSON ファイルを作成します。sam local invoke CLI コマンドを使用し、JSON ファイルをパラメータとして Lambda 関数を呼び出します。
    • D. PutObject S3 イベント用の JSON 文字列を作成します。AWS マネジメントコンソールで、この JSON 文字列を使用してローカル Lambda 関数のテストイベントを作成します。テストを実行します。

    この問題を見る →

  68. Q68. 過去3か月間、開発チームは Amazon EC2 インスタンス上でホストされているビルドサーバーを使用して、ビルドおよびデプロイを実行してきました。EC2 インスタンスのインスタンスプロファイルには、広範なアクセス許可を含む IAM ロールが使用されています。開発チームは、このロールを、必要な最小限の権限のみを付与するポリシーに置き換える必要があります。EC2 インスタンス用のカスタム IAM ポリシーを作成してこの要件を満たすための最も迅速な方法は何ですか?

    • A. 過去3か月間にビルドサーバーがデプロイまたは更新したサービスに基づいて新しい IAM ポリシーを作成します。
    • B. 新しい IAM ポリシーを作成し、その IAM ロールに対して過去3か月間に AWS CloudTrail が記録したすべての操作を含めます。
    • C. すべてのアクセスを拒否する新しい権限境界ポリシーを作成します。この権限境界を IAM ロールに関連付けます。
    • D. Amazon Athena を使用して、IAM ロールが過去3か月間に実行した AWS CloudTrail イベントを含む Amazon S3 バケットをクエリし、新しい IAM ポリシーを作成します。

    この問題を見る →

  69. Q69. 企業は、コンテナイメージが実行状態に入る前にそのセキュリティを強化したいと考えています。同社のアプリケーションは、Amazon Elastic Container Registry (Amazon ECR) をイメージレジストリとして、Amazon Elastic Kubernetes Service (Amazon EKS) をコンピューティングとして、AWS CodePipeline をコンテナ統合および継続的インテグレーション/継続的デリバリー (CI/CD) ワークフローとして使用しています。新しいコンテナイメージが EKS クラスター内の開発名前空間にデプロイされた後、ステージングアプリケーションのテストがパイプラインの最終段階で実行されます。開発者は、CI/CD パイプライン内でより早期にコンテナイメージのセキュリティ分析を実施するための分析段階をデプロイ前に追加したいと考えています。この要件を最も効率的に満たす解決策はどれですか?

    • A. コンテナイメージをビルドし、ローカルで docker scan コマンドを実行します。問題が検出された場合は、ソースコードリポジトリへの変更のプッシュ前に修正します。このワークフローをコミット前に強制するために、プリコミットフックを作成します。
    • B. コンテナイメージのビルド後に実行される新しい CodePipeline ステージを作成します。ECR の基本イメージスキャンを、イメージのプッシュ時に実行するように設定します。AWS Lambda 関数をアクションプロバイダーとして使用します。Lambda 関数を構成してスキャン結果を確認し、問題が検出された場合にパイプラインを失敗させます。
    • C. ソースコードリポジトリからソースコードを取得した後に実行される新しい CodePipeline ステージを作成します。最新版のソースコードに対してセキュリティスキャンツールを実行します。問題が検出された場合、パイプラインを失敗させます。
    • D. デプロイステージにアクションを追加し、EKS クラスターへのデプロイ前に実行されるようにします。ECR の基本イメージスキャンを、イメージのプッシュ時に実行するように設定します。AWS Lambda 関数をアクションプロバイダーとして使用します。Lambda 関数を構成してスキャン結果を確認し、問題が検出された場合にパイプラインを失敗させます。

    この問題を見る →

  70. Q70. 開発者は、アプリケーションが Amazon RDS for MySQL データベースに対して頻繁に実行するクエリの結果をキャッシュするキャッシュ機構を実装する必要があります。キャッシュ対象のデータ構造にはセットおよびソート済みセットが含まれます。 開発者は、最も低いレイテンシを実現するために、どのようにキャッシュを実装すべきですか?

    • A. Memcached インスタンス向けに Amazon ElastiCache を作成します。キャッシュ前にデータを JSON にシリアル化します。
    • B. Redis インスタンス向けに Amazon ElastiCache を作成します。Redis クライアントライブラリを使用してデータをキャッシュします。
    • C. Amazon DynamoDB テーブルを作成します。キャッシュ前にデータを JSON にシリアル化します。
    • D. Memcached インスタンス向けに Amazon ElastiCache を作成します。Memcached クライアントライブラリを使用してデータをキャッシュします。

    この問題を見る →

  71. Q71. マイクロサービスアプリケーションが Amazon Elastic Container Service (Amazon ECS) 上の複数のコンテナでデプロイされています。パフォーマンス向上のため、開発者はマイクロサービス間のトレース情報を収集し、マイクロサービスアーキテクチャを視覚化したいと考えています。この要件を満たす解決策はどれですか?

    • A. amazon/aws-xray-daemon ベースイメージからコンテナをビルドします。AWS X-Ray SDK を使用してアプリケーションを検出(instrument)します。
    • B. コンテナイメージに Amazon CloudWatch エージェントをインストールします。CloudWatch SDK を使用して、各マイクロサービスからカスタムメトリクスを公開します。
    • C. 各 ECS インスタンスに AWS X-Ray デーモンをインストールします。
    • D. AWS CloudTrail のデータイベントを構成し、マイクロサービス間のトラフィックをキャプチャします。

    この問題を見る →

  72. Q72. 開発者は、Amazon Simple Notification Service (Amazon SNS) トピックから送信されるメッセージによってトリガーされる AWS Lambda 関数を作成しています。これらのメッセージは、顧客関係管理(CRM)システムからの顧客データの更新を表します。開発者は、Lambda 関数がメールアドレスの変更に関連するメッセージのみを処理することを望んでいます。SNS トピックの他のサブスクライバーは、それ以外のメッセージを処理します。この要件を最も少ない開発作業量で満たす解決策はどれですか?

    • A. Lambda イベントフィルタリングを使用して、メールアドレスの変更に関連するメッセージのみが Lambda 関数を呼び出せるようにします。
    • B. Lambda 関数の SNS サブスクリプションで SNS フィルタリングポリシーを使用し、メールアドレスの変更に関連するメッセージのみが Lambda 関数を呼び出せるようにします。
    • C. Amazon Simple Queue Service (Amazon SQS) キューを SNS トピックにサブスクライブします。SQS キューのフィルタリングポリシーを構成し、メールアドレスの変更に関連するメッセージのみを許可します。SQS キューを Lambda 関数に接続します。
    • D. Lambda コードを構成して受信したメッセージを確認します。メッセージがメールアドレスの変更に関連しない場合、Lambda 関数がメッセージを SNS トピックに再公開し、他のサブスクライバーが処理できるようにします。

    この問題を見る →

  73. Q73. 開発者は VPC モードで AWS Lambda 関数を作成しています。Amazon S3 バケットにオブジェクトがアップロードされると、S3 イベントが Lambda 関数を呼び出します。Lambda 関数はそのオブジェクトを処理し、いくつかの分析結果を生成し、それらをファイルに記録します。各処理されたオブジェクトは、ログエントリを含むログファイルも生成します。 他の Lambda 関数、AWS サービスおよびオンプレミスのリソースは、結果ファイルおよびログファイルにアクセスする必要があります。各ログエントリは、同じ共有ログファイルに追記される必要があります。開発者は、ファイルを共有し、既存のファイルに結果を追記できる解決策を求めています。 開発者は、これらの要件を満たすためにどの解決策を使用すべきですか?

    • A. Amazon Elastic File System (Amazon EFS) ファイルシステムを作成します。Lambda 内で EFS ファイルシステムをマウントします。結果ファイルおよびログファイルをマウントポイントに保存します。ログエントリをログファイルに追記します。
    • B. マルチアタッチを有効にした Amazon Elastic Block Store (Amazon EBS) ボリュームを作成します。EBS ボリュームをすべての Lambda 関数にアタッチします。Lambda 関数のコードを更新してログファイルをダウンロードし、ログエントリを追記して、変更後のログファイルを Amazon EBS にアップロードします。
    • C. /tmp ローカルディレクトリへの参照を作成します。このディレクトリ参照を使用して結果ファイルおよびログファイルを保存します。ログエントリをログファイルに追記します。
    • D. /opt ストレージディレクトリへの参照を作成します。このディレクトリ参照を使用して結果ファイルおよびログファイルを保存します。ログエントリをログファイルに追記します。

    この問題を見る →

  74. Q74. ある企業のアプリケーションには、IoT デバイスから送信されるメッセージを処理する AWS Lambda 関数があります。企業は、Lambda 関数がサービスレベル契約(SLA)を満たしていることを保証するために監視を行いたいと考えています。開発者は、アプリケーションのスループットをほぼリアルタイムで測定する解決策を実装する必要があります。スループットは、指定された時間枠内で Lambda 関数が受信および処理したメッセージの数に基づいて計算される必要があります。Lambda 関数は初期化および後処理ステップを実行しますが、これらはスループット計算に含めるべきではありません。開発者は、これらの要件を満たすために何をするべきですか?

    • A. Amazon CloudWatch の Lambda 関数の ConcurrentExecutions メトリクスを使用してスループットを測定します。
    • B. アプリケーションを変更し、計算されたスループットを Amazon CloudWatch Logs に記録します。Amazon EventBridge を使用して、定期的に別の Lambda 関数を呼び出してログを処理します。
    • C. アプリケーションを変更し、Lambda 関数が各メッセージを受信および処理する際にカスタムの Amazon CloudWatch メトリクスを発行します。これらのメトリクスを使用してスループットを計算します。
    • D. Amazon CloudWatch の Lambda 関数の Invocations メトリクスおよび Duration メトリクスを使用してスループットを計算します。

    この問題を見る →

  75. Q75. Amazon SQS の遅延キューの役割は何ですか?

    • A. メッセージがキューに最初に追加されたときに、設定可能な時間だけ非表示になります。
    • B. メッセージがキューから消費された後に、設定可能な時間だけ非表示になります。
    • C. コンシューマーがメッセージを取得する前に、設定可能な時間だけキューをポーリングできます。
    • D. メッセージがキューから消費された後、設定可能な時間の間は削除できません。

    この問題を見る →

  76. Q76. ある開発者が、Amazon Aurora PostgreSQL データベースに接続するサーバーレスアプリケーションを構築しています。このサーバーレスアプリケーションは複数の AWS Lambda 関数で構成されています。各 Lambda 関数がスケールアップするたびに、新しいデータベース接続が確立され、データベースリソースの消費が増加します。開発者は、データベースへの接続数を削減したいと考えています。この解決策は、Lambda 関数のスケーラビリティに影響を与えてはなりません。この要件を満たす解決策はどれですか?

    • A. 各 Lambda 関数に対してプロビジョニング済み同時実行数(ProvisionedConcurrentExecutions)を 10 に設定して、プロビジョニング済み同時実行を設定します。
    • B. Aurora PostgreSQL のクラスターキャッシュ管理を有効化します。各 Lambda 関数の接続文字列をクラスターキャッシュ管理を指すように変更します。
    • C. Amazon RDS Proxy を使用して接続プールを作成し、データベース接続を管理します。各 Lambda 関数の接続文字列をこのプロキシを参照するように変更します。
    • D. 各 Lambda 関数に対して予約済み同時実行数(ReservedConcurrentExecutions)を 10 に設定して、予約済み同時実行を設定します。

    この問題を見る →

  77. Q77. ある会社が、毎日ニュースレポートを掲載するウェブサイトを運営しています。ユーザーがこのサイトにアクセスすると、AWS Lambda 関数がリクエストを処理し、会社のオンプレミスデータベースを照会して最新のニュースレポートを取得します。これらのニュースレポートはバイナリ形式で保存されています。Lambda 関数は Amazon Translate の TranslateText API 操作を使用してニュースレポートを翻訳し、その結果をユーザーに表示します。人気の増加に伴い、サイトの応答時間が遅くなり、データベースが過負荷状態になっています。会社はデータベースを変更できず、Lambda 関数の応答時間を改善する解決策を求めています。この要件を満たす解決策はどれですか?

    • A. Lambda 関数の呼び出しを非同期方式に変更する。
    • B. 翻訳済みのニュースレポートを Lambda の /tmp ディレクトリにキャッシュする。
    • C. TranslateText API のキャッシュを有効化する。
    • D. Lambda 関数を並列処理を使用するように変更する。

    この問題を見る →

  78. Q78. ある開発者が、AWS 上で実行されるサーバーレスアプリケーションを構築しています。開発者は、インクリメンタルな変更を AWS にデプロイしてテストできる、開発ワークフローを高速化したいと考えています。開発者はインクリメンタルな変更をデプロイしたいが、コードコミットごとにアプリケーション全体を AWS に完全にデプロイしたくありません。これらの要件を満たすには、開発者はどうすればよいですか?

    • A. AWS Serverless Application Model (AWS SAM) を使用してアプリケーションを構築します。sam sync コマンドを使用してインクリメンタルな変更をデプロイします。
    • B. AWS Serverless Application Model (AWS SAM) を使用してアプリケーションを構築します。sam init コマンドを使用してインクリメンタルな変更をデプロイします。
    • C. AWS Cloud Development Kit (AWS CDK) を使用してアプリケーションを構築します。cdk synth コマンドを使用してインクリメンタルな変更をデプロイします。
    • D. AWS Cloud Development Kit (AWS CDK) を使用してアプリケーションを構築します。cdk bootstrap コマンドを使用してインクリメンタルな変更をデプロイします。

    この問題を見る →

  79. Q79. ある組織が Amazon S3 に大規模なファイルを保存しており、エンドユーザーにファイルに関するメタデータを表示する Web アプリケーションを開発しています。ユーザーはこのメタデータに基づいて、対象オブジェクトを選択してダウンロードします。この組織は、ファイルおよびメタデータをミリ秒単位の低遅延で検索可能なメカニズムを必要としています。この要件を実現するために、どの AWS サービスを使用すべきですか?

    • A. Amazon DynamoDB
    • B. Amazon EC2
    • C. AWS Lambda
    • D. Amazon RDS

    この問題を見る →

  80. Q80. ある会社が、バックエンドシステムと情報を共有したいと考えています。バックエンドシステムには HTTP API エンドポイントがあり、会社はこのエンドポイントを使用して情報を共有できます。この会社は、HTTP API の認証に必要な API キーを所有しています。この会社は、API キーをコード内で安全に管理する方法を必要としています。API キーとアプリケーションコードの統合は、アプリケーションの可用性に影響を与えてはなりません。これらの要件を最も安全に満たす解決策はどれですか?

    • A. API 認証情報を AWS Secrets Manager に保存します。実行時に AWS SDK を使用して API 認証情報を取得し、API 呼び出しに使用します。
    • B. API 認証情報をローカルのコード変数に保存します。コードをセキュアな Git リポジトリにプッシュします。実行時にローカルのコード変数を使用して API 呼び出しを行います。
    • C. API 認証情報をプライベートな Amazon S3 バケット内のオブジェクトとして保存します。IAM ポリシーを使用して S3 オブジェクトへのアクセスを制限します。実行時に AWS SDK を使用して API 認証情報を取得し、API 呼び出しに使用します。
    • D. API 認証情報を Amazon DynamoDB テーブルに保存します。リソースベースのポリシーを使用してテーブルへのアクセスを制限します。実行時に AWS SDK を使用して API 認証情報を取得し、API 呼び出しに使用します。

    この問題を見る →

  81. Q81. 開発中のアプリケーションは、多数の動画ファイルを保存する必要があります。保存前に、アプリケーションは各動画ファイルに対して一意のキーを使用してデータを暗号化する必要があります。開発者は、このアプリケーションをどのように設計すべきですか?

    • A. KMS Encrypt API を使用してデータを暗号化します。暗号化されたデータキーとデータを保存します。
    • B. 暗号化ライブラリを使用してアプリケーションの暗号化キーを生成します。生成した暗号化キーでデータを暗号化します。暗号化されたデータを保存します。
    • C. KMS GenerateDataKey API を使用してデータキーを取得します。データキーでデータを暗号化します。暗号化されたデータキーとデータを保存します。
    • D. AWS KMS キーを使用したサーバーサイド暗号化を行い、データを S3 バケットにアップロードします。

    この問題を見る →

  82. Q82. ある開発者は、AWS インフラストラクチャをコードとして管理したいと考えており、同一のインフラストラクチャの複数のコピーをデプロイし、段階的に変更を加え、以前のバージョンへロールバックできるようにしたいと考えています。この要件を満たす方法はどれですか?

    • A. コスト配分レポートと AWS OpsWorks を使用してインフラストラクチャをデプロイおよび管理します。
    • B. Amazon CloudWatch メトリクスおよびアラーム、およびリソースタグを使用してインフラストラクチャをデプロイおよび管理します。
    • C. AWS Elastic Beanstalk と AWS CodeCommit を使用してインフラストラクチャをデプロイおよび管理します。
    • D. AWS CloudFormation と AWS CodeCommit を使用してインフラストラクチャをデプロイおよび管理します。

    この問題を見る →

  83. Q83. ある会社が、一連のAWS Lambda関数としてアプリケーションを実行しています。各Lambda関数はAmazon Simple Notification Service(Amazon SNS)からデータを受信し、そのデータをAmazon Aurora DBインスタンスに書き込みます。情報セキュリティポリシーを遵守するため、同社はすべてのLambda関数が、Auroraへのアクセスに使用するセキュアな暗号化されたデータベース接続文字列を共有することを必須としています。この要件を満たす解決策はどれですか?

    • A. AuroraのIAMデータベース認証を有効化して、すべてのLambda関数の安全なデータベース接続を可能にする。
    • B. 資格情報を暗号化されたAmazon RDS DBインスタンス内に保存し、そこから資格情報を読み込む。
    • C. 資格情報をAWS Systems Manager Parameter Store内にセキュア文字列パラメータとして保存する。
    • D. Lambda環境変数を使用し、共有のAWS Key Management Service(AWS KMS)キーで暗号化する。

    この問題を見る →

  84. Q84. ある会社が新しいアプリケーションをAWS上にデプロイしています。同社はアプリケーションログをAmazon CloudWatch Logsへストリーミングしています。開発チームは、ログ行に「ERROR」が出現した際にメール通知を受け取る必要があります。ある開発者がAmazon Simple Notification Service(Amazon SNS)トピックを作成し、開発チームをそのトピックにサブスクライブしました。この開発者は、要件を満たすために何を行うべきですか?

    • A. 適切なロググループを選択します。CloudWatchメトリクスフィルターを作成し、「ERROR」を検索条件として設定します。このメトリクスに対してアラームを作成し、メトリクス値が1以上になった場合にSNSトピックへ通知します。
    • B. CloudWatch Logs Insightsで適切なロググループを選択します。ログ内の「ERROR」を検索するメトリクスクエリを作成します。このメトリクスに対してアラームを作成し、メトリクス値が1以上になった場合にSNSトピックへ通知します。
    • C. 適切なロググループを選択します。SNSサブスクリプションフィルターを作成し、「ERROR」をフィルターパターンとして設定します。宛先としてSNSトピックを選択します。
    • D. 「ERROR」をフィルターパターンとして含むCloudWatchアラームを作成し、適切なロググループのディメンションを定義し、SNSトピックをターゲットとして指定します。

    この問題を見る →

  85. Q85. ある会社には複数のAWS Lambda関数があり、QAチームはLambda関数URLを使用してテストを行いたいと考えています。開発者は、QAチームが共通のURLを使用してLambda関数を呼び出せるよう、Lambda関数の認証を構成する必要があります。この要件を満たす解決策はどれですか?

    • A. Lambda関数上でループするCLIスクリプトを作成し、AWS IAM認証タイプを持つLambda関数URLを追加します。別のスクリプトを実行して、すべてのLambda関数のAmazonリソース名(ARN)に対してlambda:InvokeFunctionUrl操作を許可するIAMベースのアイデンティティポリシーを作成します。このポリシーをQA IAMグループにアタッチします。
    • B. Lambda関数上でループするCLIスクリプトを作成し、NONE認証タイプを持つLambda関数URLを追加します。別のスクリプトを実行して、すべてのLambda関数のAmazonリソース名(ARN)に対してlambda:InvokeFunctionUrl操作を許可するIAMベースのリソースポリシーを作成します。このポリシーをQA IAMグループにアタッチします。
    • C. Lambda関数上でループするCLIスクリプトを作成し、AWS IAM認証タイプを持つLambda関数URLを追加します。別のスクリプトを実行して、Lambda関数上でループし、QA IAMグループのAmazonリソース名(ARN)からのlambda:InvokeFunctionUrl操作を許可するIAMベースのアイデンティティポリシーを作成します。
    • D. Lambda関数上でループするCLIスクリプトを作成し、NONE認証タイプを持つLambda関数URLを追加します。別のスクリプトを実行して、Lambda関数上でループし、QA IAMグループのAmazonリソース名(ARN)からのlambda:InvokeFunctionUrl操作を許可するIAMベースのリソースポリシーを作成します。

    この問題を見る →

  86. Q86. ある組織がAmazon S3で大規模なファイルを保存しており、最終ユーザーにファイルのメタデータを表示するWebアプリケーションを開発しています。ユーザーはメタデータに基づいてダウンロードしたいオブジェクトを選択します。この組織は、ファイルサイズなどのメタデータをミリ秒単位の遅延で検索できる仕組みを必要としています。 このタスクを完了するためにどのAWSサービスを使用すべきですか?

    • A. Amazon DynamoDB
    • B. Amazon EC2
    • C. AWS Lambda
    • D. Amazon RDS

    この問題を見る →

  87. Q87. あるゲームアプリケーションがユーザーのゲームデータをAmazon DynamoDBテーブルに保存しています。個人ユーザーは他のユーザーのゲームデータにアクセスしてはいけません。

    • A. 個人ユーザーのキーを使用してゲームデータを暗号化する。
    • B. 特定のプライマリキー値に基づいて特定のアイテムへのアクセスを制限する。
    • C. DynamoDBへのアクセス前にメタデータを注入するために、SQSキュー内でデータを一時的に保持する。
    • D. DynamoDBからレコードを読み取り、クライアント側で関係のないデータを破棄する。

    この問題を見る →

  88. Q88. ある開発者が、us-west-2リージョンでAmazon DynamoDBを使用するアプリケーションのトラブルシューティングを行っています。このアプリケーションはAmazon EC2インスタンスにデプロイされています。アプリケーションは「Cars」という名前のテーブルに対して読み取り専用操作を行う必要があります。EC2インスタンスには、以下のIAMポリシーを含むIAMロールがアタッチされています:{"Version":"2012-10-17"}

    • A. IAMポリシーのリソースを「arn:aws:dynamodb:us-west-2:account-id:table/*」に変更する。
    • B. IAMポリシーにdynamodb:*操作を含めるように変更する。
    • C. EC2サービスプリンシパルを指定した信頼ポリシーを作成し、そのロールとポリシーを関連付ける。
    • D. ロールとdynamodb.amazonaws.comの間に信頼関係を作成する。

    この問題を見る →

  89. Q89. ある開発者が、顧客が音楽イベントの座席をリアルタイムで選択できるサーバーレスアプリケーションを設計しています。顧客はAWS Lambda関数を使用して注文リクエストをAmazon API Gateway APIに送信し、注文IDを生成します。このアプリケーションには、在庫管理と支払い処理のための2つの追加Lambda関数が含まれており、これらは注文をAmazon DynamoDBテーブルに書き込みます。 アプリケーションは、顧客に座席を割り当てる際に以下の要件を満たす必要があります。ある座席が誤って複数回販売された場合、アプリケーションが受け取った最初の注文はその座席を獲得しなければなりません。この場合、アプリケーションは最初の注文の支払いのみを処理します。しかし、最初の注文の支払い処理中に拒否された場合、2番目の注文が座席を獲得しなければなりません。この場合、アプリケーションは2番目の注文の支払いを処理しなければなりません。 この要件を満たす解決策はどれですか?

    • A. 注文IDをAmazon Simple Notification Service(Amazon SNS)FIFOトピックに送信し、在庫管理用にAmazon Simple Queue Service(Amazon SQS)FIFOキューをファンアウトし、支払い処理用にもう1つのSQS FIFOキューをファンアウトする。
    • B. 注文IDを生成するLambda関数を変更し、在庫管理用のLambda関数を起動します。その後、支払い処理用のLambda関数を起動します。
    • C. 注文IDをAmazon Simple Notification Service(Amazon SNS)トピックに送信し、在庫管理および支払い処理用のLambda関数をトピックにサブスクライブします。
    • D. 注文IDをAmazon Simple Queue Service(Amazon SQS)キューに送信し、在庫管理および支払い処理用のLambda関数をキューのポーリング用に構成します。

    この問題を見る →

  90. Q90. ある会社が、AWS Lambda関数を使用して取引データを非同期で処理する分析アプリケーションを持っています。開発者は、Lambda関数の非同期呼び出しが時折失敗することに気づきました。Lambda関数の呼び出しが失敗した場合、開発者は、エラーと詳細なレコード情報を処理するための2番目のLambda関数を呼び出したいと考えています。この要件を満たす解決策はどれですか?

    • A. Lambda関数のターゲットを構成し、障害条件を指定します。ターゲットタイプとしてLambda関数を指定し、エラー処理Lambda関数のAmazonリソース名(ARN)をリソースとして指定します。
    • B. 初期Lambda関数でAWS X-Rayのアクティブトレーシングを有効化します。X-Rayを構成して失敗した呼び出しのスタックトレースをキャプチャします。イベントオブジェクトにスタックトレースを含めてエラー処理Lambda関数を呼び出します。
    • C. Lambda関数のトリガーを構成し、障害条件を指定します。ターゲットタイプとしてLambda関数を指定し、エラー処理Lambda関数のAmazonリソース名(ARN)をリソースとして指定します。
    • D. 初期Lambda関数にステータスチェックアラートを作成します。アラートが起動したときにエラー処理Lambda関数を呼び出すようにアラートを構成します。アラートがイベントオブジェクト内でスタックトレースを渡すことを確認します。

    この問題を見る →

  91. Q91. ある開発者は、Amazon API Gateway を使用するマイクロサービスアプリケーションを構築しています。このアプリケーションは AWS Lambda、Amazon SQS、および Amazon DynamoDB を利用しています。Lambda 関数の1つがメッセージを SQS FIFO キューに追加します。開発者がアプリケーションログを調査したところ、DynamoDB テーブルに重複した項目が見つかりました。これらの重複項目は、キューからメッセージをポーリングして処理する別の関数によって挿入されたものです。 この問題の最も可能性の高い原因は何ですか?

    • A. DynamoDB テーブル上の書き込み操作がレート制限されています。
    • B. SQS キューが同じメッセージを複数回関数に配信しています。
    • C. API Gateway が SQS キュー内のメッセージを複製しています。
    • D. ポーリング関数のタイムアウトがキューの可視性タイムアウトよりも長くなっています。

    この問題を見る →

  92. Q92. 法的要件により、金融機関は顧客の元の記録を10年間保存する必要があります。完全な記録には個人識別情報(PII)が含まれます。現地の規制によると、PII は当該機関内の特定の人物のみがアクセス可能であり、第三者と共有してはなりません。同社は、PII を共有せずに記録を第三者組織に提供し、統計分析を行うことを希望しています。開発者は、元の不変記録を Amazon S3 に保存することを計画しています。S3 ドキュメントへのアクセス者に応じて、ドキュメントはそのまま返却されるか、PII を削除した状態で返却される必要があります。開発者は、ドキュメントから PII を削除する AWS Lambda 関数(removePii)を作成しました。 開発者は、PII 要件を満たしつつ、ドキュメントのコピーを1つだけ保持するには、どのようにすべきでしょうか?

    • A. S3 イベント通知を設定し、S3 GET リクエスト時に removePii 関数を呼び出します。PII を含まないオブジェクトにアクセスするために、GET リクエストで Amazon S3 を呼び出します。
    • B. S3 イベント通知を設定し、S3 PUT リクエスト時に removePii 関数を呼び出します。PII を含まないオブジェクトにアクセスするために、PUT リクエストで Amazon S3 を呼び出します。
    • C. S3 コンソールから S3 Object Lambda アクセスポイントを作成します。removePii 関数を選択します。PII を含まないオブジェクトにアクセスするために、S3 アクセスポイントを使用します。
    • D. S3 コンソールから S3 アクセスポイントを作成します。GetObjectLegalHold S3 API 関数をアクセスポイント名で呼び出します。removePii 関数名を渡すことで、PII を含まないオブジェクトにアクセスします。

    この問題を見る →

  93. Q93. 開発者は、JSON ファイルとして Amazon S3 オブジェクトにデータを格納するアプリケーションを設計しました。その後、AWS Lambda 関数内のカスタムビジネスロジックがそのオブジェクトを処理し、Lambda 関数がデータを Amazon DynamoDB テーブルに読み込みます。最近、ワークロードのトラフィックに急激かつ顕著な変化が生じました。DynamoDB テーブルへのデータフローがレート制限されています。開発者は、この制限を解消し、データをより一貫性のある方法で DynamoDB テーブルに読み込むソリューションを実装したいと考えています。どのソリューションがこれらの要件を満たしますか?

    • A. Lambda 関数を2つの関数に再構成します。1つはデータ変換用、もう1つは DynamoDB テーブルへのデータ読み込み用です。関数間で Amazon Simple Queue Service (Amazon SQS) キューを作成し、アイテムをメッセージとして保存して2番目の関数を呼び出します。
    • B. DynamoDB テーブルで Auto Scaling を有効化します。Amazon CloudWatch を使用してテーブルの読み取りおよび書き込みキャパシティメトリクスを監視し、消費されたキャパシティを追跡します。
    • C. Lambda 関数にエイリアスを作成します。アプリケーションで使用する事前プロビジョニングされた同時実行数を設定します。
    • D. Lambda 関数を2つの関数に再構成します。1つは DynamoDB テーブルへのデータ保存用、もう1つはデータ保存後の処理および項目更新用です。DynamoDB ストリームを作成し、データ保存後に2番目の関数を呼び出します。

    この問題を見る →

  94. Q94. Web アプリケーション用の1台とデータベース用の1台のサーバーがあります。Web サービスはウェブページを表示し、キャッシュ内のセッション状態を管理します。データベースサービスは注文詳細情報を含む MySQL データベースをホストします。アプリケーションのトラフィックが非常に多い場合、Web サービスのキャッシュ使用率がほぼ100%に達し、アプリケーションの応答速度が大幅に低下します。開発者は、キャッシュ使用率の増加およびパフォーマンス低下の多くが、追加ユーザーのセッション状態管理負荷に関係していることを確認しました。Web サービスの移行にあたり、開発者は Amazon EC2 インスタンスと、Application Load Balancer 後方の Auto Scaling グループを使用します。開発者は、アプリケーションのパフォーマンスを向上させるために、アプリケーションにどのような追加の変更を加えるべきでしょうか?

    • A. EC2 インスタンス上で MySQL データベースをホストします。セッションデータおよびアプリケーションデータを MySQL データベースに格納します。
    • B. Amazon ElastiCache for Memcached を使用してセッションデータを格納および管理します。アプリケーションデータの保存には Amazon RDS for MySQL データベースインスタンスを使用します。
    • C. Amazon ElastiCache for Memcached を使用してセッションデータおよびアプリケーションデータの両方を格納および管理します。
    • D. EC2 インスタンスのストレージを使用してセッションデータを管理します。アプリケーションデータの保存には Amazon RDS for MySQL データベースインスタンスを使用します。

    この問題を見る →

  95. Q95. IT 部門は、機密性の高い画像を Amazon S3 に保存しています。1年後、同社はこれらの画像をアーカイブストレージに移動します。IT 部門はこれらの画像に頻繁にアクセスする必要はありませんが、アーカイブ済みの画像を24時間以内にアクセスできるようにしたいと考えています。IT 部門は、これらの要件を最も費用対効果の高い方法で満たす、信頼性の高いストレージソリューションを求めています。

    • A. 画像の保存には S3 Standard-Infrequent Access (S3 Standard-IA) を使用します。アーカイブ済み画像の保存および取得には、S3 Glacier Deep Archive の標準検索を使用します。
    • B. 画像の保存には S3 Standard-Infrequent Access (S3 Standard-IA) を使用します。アーカイブ済み画像の保存および取得には、S3 Glacier Deep Archive のバルク検索を使用します。
    • C. 画像の保存には S3 Intelligent-Tiering を使用します。アーカイブ済み画像の保存および取得には、S3 Glacier Deep Archive の標準検索を使用します。
    • D. 画像の保存には S3 One Zone-Infrequent Access (S3 One Zone-IA) を使用します。アーカイブ済み画像の保存および取得には、S3 Glacier Deep Archive のバルク検索を使用します。

    この問題を見る →

  96. Q96. 開発者は、Amazon DynamoDB にデータを格納する Web アプリケーションを構築しています。ExamScores テーブルには、student_id、subject_name、top_score の3つの属性があります。ExamScores テーブルの各項目は、パーティションキーとして student_id、並べ替えキーとして subject_name を使用して識別されます。Web アプリケーションは、各科目の最高得点の student_id を表示する必要があります。開発者は、各科目の最高得点の学生 ID を取得するためのクエリ速度を向上させたいと考えています。どのソリューションがこれらの要件を満たしますか?

    • A. ローカルセカンダリインデックス (LSI) を作成し、パーティションキーとして subject_name、並べ替えキーとして top_score を指定します。
    • B. ローカルセカンダリインデックス (LSI) を作成し、パーティションキーとして top_score、並べ替えキーとして student_id を指定します。
    • C. グローバルセカンダリインデックス (GSI) を作成し、パーティションキーとして subject_name、並べ替えキーとして top_score を指定します。
    • D. グローバルセカンダリインデックス (GSI) を作成し、パーティションキーとして subject_name、並べ替えキーとして student_id を指定します。

    この問題を見る →

  97. Q97. 開発者は、AWS Copilot を使用して新しいコンテナ化アプリケーションを構築しています。開発者は、AWS Copilot コマンドラインインターフェイス (CLI) を使用して開発環境にアプリケーションをデプロイしています。開発者は、アプリケーションコードを新しい AWS CodeCommit リポジトリにプッシュしました。新しいアプリケーションを本番環境にリリースする前に、開発者は自動化されたデプロイパイプラインを作成する必要があります。これらの要件を最も効率的な運用で満たすには、開発者はどうすればよいでしょうか?

    • A. buildspec ファイルを作成し、AWS Copilot CLI コマンドを呼び出してアプリケーションをビルドおよびデプロイします。AWS Copilot CLI を使用して、ソース段階で CodeCommit リポジトリを、ビルド段階で AWS CodeBuild を使用する AWS CodePipeline を作成します。
    • B. AWS Serverless Application Model (AWS SAM) CLI を使用して、AWS CodePipeline 構成を初期化およびブートストラップします。ソースとして CodeCommit リポジトリを使用します。AWS Copilot CLI を呼び出してアプリケーションをビルドおよびデプロイします。
    • C. AWS Copilot CLI を使用して AWS Copilot パイプラインを定義し、AWS CodePipeline をデプロイします。AWS CodePipeline のソースとして CodeCommit を選択します。
    • D. CodeCommit をソースとする AWS CodePipeline のための AWS CloudFormation テンプレートを定義します。テンプレートを AWS Copilot CLI のアドオンとして設定します。AWS Copilot CLI を使用してアプリケーションをデプロイします。

    この問題を見る →

  98. Q98. 開発者は、AWS Lambda 関数を非同期で呼び出すアプリケーションを持っています。開発者は、Lambda 関数の呼び出しが失敗した原因となるメッセージを保存し、アプリケーションが後で再試行できるようにしたいと考えています。 開発者は、この目的を最小限の運用コストで実現するには、どうすればよいでしょうか?

    • A. Amazon CloudWatch Logs のロググループを設定し、メッセージをフィルタリングして Amazon S3 バケットに保存します。Lambda 内でメッセージをインポートし、Lambda 関数を再実行します。
    • B. Amazon EventBridge (Amazon CloudWatch Events) を設定し、メッセージを Amazon Simple Notification Service (Amazon SNS) に送信して Lambda 関数を再起動します。
    • C. 破棄されたメッセージ用のデッドレターキュー (DLQ) を実装します。デッドレターキューを Lambda 関数のイベントソースとして設定します。
    • D. Amazon EventBridge (Amazon CloudWatch Events) イベントを Amazon Simple Queue Service (Amazon SQS) キューに送信します。Lambda 関数を SQS キューからメッセージを取得するように設定し、Lambda 関数を再実行します。

    この問題を見る →

  99. Q99. ある企業が、WebhookとしてAmazon API Gateway REST APIエンドポイントを使用し、ローカルのソースコード管理(SCM)システムからAmazon EventBridgeへイベントを発行しています。この企業は、中央のAWSアカウント内のEventBridgeルールを設定して、アプリケーションデプロイメントを監視しています。同社は、複数の受信側AWSアカウントにわたって同じイベントを配信する必要があります。開発者は、SCMシステムの構成を変更せずにこの要件を満たすにはどうすればよいでしょうか?

    • A. 必要なすべてのAWSアカウントにAPI Gateway REST APIをデプロイします。すべてのゲートウェイエンドポイントで同じカスタムドメインを使用し、単一のSCM Webhookがすべてのアカウントからのイベントに使用できるようにします。
    • B. すべての受信側AWSアカウントにAPI Gateway REST APIをデプロイします。AWSアカウントの数と同じ数だけSCM Webhookを作成します。
    • C. 中央のAWSアカウントのEventBridgeに、受信側AWSアカウントへのアクセス権限を付与します。受信側AWSアカウント上でEventBridgeイベントバスを既存のEventBridgeルールのターゲットとして追加します。
    • D. API GatewayのタイプをREST APIからHTTP APIに変換します。

    この問題を見る →

  100. Q100. ある企業が、AWS CodeDeployを使用してアプリケーションをAWS Lambdaにデプロイする予定です。新バージョンのアプリケーションをデプロイする際、最初はリアルタイムトラフィックの10%のみを新バージョンにルーティングします。その後、10分ごとにさらに10%のリアルタイムトラフィックを新バージョンにルーティングし、最終的にすべてのリアルタイムトラフィックが新バージョンにルーティングされるようにします。この要件を満たすCodeDeployの事前定義デプロイ構成はどれですか?

    • A. CodeDeploy Default. OnceAtATime
    • B. CodeDeploy Default. Lambda Canary10Percent10Minutes
    • C. CodeDeploy Default. LambdaLinear10PercentEvery10Minutes
    • D. CodeDeploy Default. ECSLinear10PercentEvery3Minutes

    この問題を見る →