type
status
date
slug
summary
tags
category
icon
password
书籍
 

理論

notion image
notion image
プリサインドURLを使用してオブジェクトをS3にアップロードする手順は以下の通りです:
  1. 署名付きURLの生成:
      • AWS SDKまたはAWS CLIを使用して、GetObject または PutObject 操作用の署名付きURLを生成します。
      • 署名付きURLには、有効期限やアクセス権限が含まれます。
  1. URLの提供:
      • 生成したプリサインドURLを、認証されたユーザーに提供します。このURLを通じて、ユーザーはS3にアクセスできます。
  1. ブラウザまたはアプリケーションでアップロード:
      • ユーザーは提供されたURLを使い、ブラウザやアプリケーションからオブジェクトをアップロードします。URLにリクエストを送るだけで、認証や権限チェックを済ませることができます。
  1. S3での確認:
      • アップロードされたオブジェクトは、指定されたS3バケットに保存されます。
プリサインドURLを使用することで、署名の管理やアクセス制御を簡単に行えます。

実践

一問道場

問題 #378
ある会社がウェブアプリケーションを運営しており、そのアプリケーションは安全に画像や動画をAmazon S3バケットにアップロードします。この会社は、認証されたユーザーのみがコンテンツを投稿できるようにする必要があります。アプリケーションは、ブラウザインターフェイスを通じてオブジェクトをアップロードするために使用されるプリサインドURLを生成します。ほとんどのユーザーは、100 MB以上のオブジェクトのアップロードが遅いと報告しています。
ソリューションアーキテクトは、認証されたユーザーのみがコンテンツを投稿できることを保証しながら、アップロードパフォーマンスを向上させるために何をすべきですか?
A. Amazon API Gatewayを設定し、エッジ最適化されたAPIエンドポイントを作成して、リソースとしてS3サービスプロキシを設定します。このリソースのPUTメソッドを設定して、S3のPutObject操作を公開します。API GatewayをCOGNITO_USER_POOLS認証を使用してセキュリティで保護します。ブラウザインターフェイスには、プリサインドURLの代わりにAPI Gatewayを使用してオブジェクトをアップロードさせます。
B. Amazon API Gatewayを設定し、リージョン別のAPIエンドポイントを作成して、リソースとしてS3サービスプロキシを設定します。このリソースのPUTメソッドを設定して、S3のPutObject操作を公開します。API GatewayをAWS Lambda認証でセキュリティで保護します。ブラウザインターフェイスには、プリサインドURLの代わりにAPI Gatewayを使用してオブジェクトをアップロードさせます。
C. S3バケットにS3転送加速エンドポイントを有効にします。このエンドポイントを使用してプリサインドURLを生成します。ブラウザインターフェイスには、このURLを使用してオブジェクトをS3マルチパートアップロードAPIでアップロードさせます。
D. Amazon CloudFrontディストリビューションを対象のS3バケットに設定します。CloudFrontキャッシュビヘイビアのPUTおよびPOSTメソッドを有効にします。CloudFrontオリジンをオリジンアクセスアイデンティティ(OAI)を使用するように更新します。OAIユーザーにS3バケットポリシーで3:PutObjectの権限を付与します。ブラウザインターフェイスには、CloudFrontディストリビューションを使用してオブジェクトをアップロードさせます。

解説

この問題に対する解説は、各選択肢がどのようにS3へのアップロードパフォーマンスを改善し、認証されたユーザーのみがコンテンツを投稿できるようにするかに焦点を当てています。

A. API Gateway + Cognito User Pools

  • 説明: Amazon API Gatewayを使用し、エッジ最適化されたAPIエンドポイントでS3のPutObject操作を公開します。COGNITO_USER_POOLS認証を使用して、API Gatewayをセキュアにします。
  • 問題点: API Gatewayのエッジ最適化は、主にグローバルなアクセスに最適化されていますが、アップロード速度向上には特に関与しません。また、大きなファイルのアップロードにはAPI Gatewayのオーバーヘッドが発生するため、パフォーマンスが低下する可能性があります。
  • 結論: パフォーマンス向上を最優先にする場合、API Gatewayは最適ではありません。特に大きなファイルのアップロードにおいて、遅延が発生する可能性があります。

B. API Gateway + Lambda Authorizer

  • 説明: API Gatewayを使用し、AWS Lambda認証を利用して認証を行います。この設定は、セキュリティには有効ですが、パフォーマンスには影響を与える可能性があります。
  • 問題点: Lambda認証によるオーバーヘッドがあり、大きなファイルのアップロードに対するパフォーマンス向上には寄与しません。API Gatewayはマネージドサービスとして便利ですが、速度には制限があります。
  • 結論: 同様に、パフォーマンスの問題を解決するためには、他の選択肢を検討するべきです。

C. S3 Transfer Acceleration + Multipart Upload

  • 説明: S3転送加速を有効にすると、アップロードのパフォーマンスが改善される可能性があります。特に、大きなファイルや遠距離からのアップロード時に有効です。転送加速により、データが最寄りのエッジロケーションからS3バケットに転送され、帯域幅が最適化されます。マルチパートアップロードを使用すると、ファイルが複数の部分に分割され並行してアップロードされるため、全体のアップロード速度が向上します。
  • 結論: この方法は、パフォーマンス改善に最も効果的です。特に、100 MB以上の大きなオブジェクトに対して顕著なパフォーマンス向上が期待できます。

D. CloudFront Distribution + OAI

  • 説明: CloudFrontは、静的コンテンツの配信を最適化するためのCDN(コンテンツ配信ネットワーク)ですが、アップロードパフォーマンスを向上させるためには必ずしも効果的ではありません。CloudFrontのキャッシュを利用してS3バケットへのPUTおよびPOSTメソッドを処理することができますが、アップロードは通常、S3転送加速やマルチパートアップロードで行う方が効率的です。
  • 問題点: CloudFrontはコンテンツ配信の最適化には優れていますが、大きなファイルのアップロードに対しては、転送加速やマルチパートアップロードの方がより適切です。
  • 結論: CloudFrontを使用することでコンテンツ配信のパフォーマンスは向上しますが、アップロードのパフォーマンス向上には転送加速の方が効果的です。

結論

最も適切な選択肢は C です。S3転送加速を使用すると、アップロード速度が改善され、大きなオブジェクト(100 MB以上)のアップロードにおいて特にパフォーマンスが向上します。また、マルチパートアップロードを使用することで、大きなファイルを並行してアップロードし、処理時間を短縮できます。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
379-AWS SAP AWS 「理論・実践・一問道場」AWS Organizations377-AWS SAP AWS 「理論・実践・一問道場」Compute Savings Plans
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
第1回:イントロダクション
2025-4-21
TOKYO自習島
2025-4-21
第1回:イントロダクション
2025-4-18
第1回:オリエンテーション/意思決定と会計情報
2025-4-18
建物業法の基本と免許-59問
2025-4-10
宅建士过去问速刷:小南小白陪你拿证-001
2025-4-7
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享我在 IT・MBA・不动产中介 等领域的学习与实践经验,并推动 线上线下学习会 的自主开展。

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!