DVAセキュリティ
EC2インスタンスに付与されたIAMロール(セッション最大有効期限:1時間)を使い、開発者がS3オブジェクトへの署名付きURL(Presigned URL)を有効期限12時間で生成しました。このURLの動作について正しい記述はどれですか?
AURLは生成時点で署名が確定するため、ロールのセッション有効期限に関係なく設定した12時間が有効期間となる
署名付きURLは生成後も使用した認証情報の有効性に依存する。一時認証情報のセッショントークンが失効すると、URLの有効期限内でもS3はリクエストを拒否するため誤りである。
BURLはIAMロールの一時認証情報(セッショントークン)が失効する1時間後にアクセスが拒否されるようになる
✓ 正解
Presigned URLの実質的な有効期間は「URL自体の有効期限」と「使用した認証情報の有効期限」のうち短い方が適用される。IAMロールのセッション(1時間)が失効した時点でURLも使用不能になる。
CURLの有効期限はAWSが自動的にセッション期限以内に切り詰めて1時間に再設定し、エラーなく生成が完了する
AWSはPresigned URL生成時に有効期限を自動的に切り詰める機能を持たない。12時間での生成は成功するが、実際には1時間後に一時認証情報の失効によりアクセスが拒否されるようになる。
DURLはHTTPS経由でアクセスした場合に限り12時間有効となり、HTTP経由ではセッション期限の1時間で失効する
Presigned URLの有効性はHTTPS・HTTPのプロトコルには依存しない。失効のタイミングは使用した認証情報の種類とそのセッション期限によって決まる。
解説
Presigned URL の有効性は、生成に使用した認証情報のライフタイムに依存します。IAM ロールの一時認証情報を使って生成した場合、URL 自体の有効期限(12時間)と一時認証情報の有効期限(1時間)のうち短い方が実質的な期限となります。一時認証情報のセッショントークンが失効すると、URL の期限内でも S3 はリクエストを拒否します。長期間有効な Presigned URL が必要な場合は、有効期限の長い認証情報(IAM ユーザーの長期認証情報)を使用するか、リクエストのたびに URL を生成する設計が推奨されます。
選択肢AのURL生成時点で署名確定という説明は誤りで、S3 は署名検証時に使用された認証情報の有効性も検証する。
選択肢CのAWSが自動的に有効期限を切り詰めるという動作はなく、12時間での生成は成功するが一時認証情報の失効後にアクセスが拒否される。
選択肢DのHTTPS・HTTPプロトコルによる動作の差異はなく、失効タイミングは認証情報のセッション期限によって決まる。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →