AWS CDKでブログ用の写真をホストするモジュールを作る

概要

ブログ用の写真をアップロードするにあたり、S3とCloudFrontを使って自分で写真をホストすることを検討した。

構成

写真アップロードシステムの機能と構成は以下となる。

以下に構成図を示す。

構成図

この構成をAWS CDKで実装した。 repositoryは次に公開した。

edge2992/blog-photo-hosting

コマンドラインから写真をアップロードできるようにCLIのツールも作成している。ブログを書くときに写真をアップロードして、写真のパスを返す。

改善点

Cognitoで認証した際に、S3にアップロードするIAM Roleを一時的に付与する方法もあります。 AmplifyでUIを作成して、認証後S3に写真をアップロードできる権限を付与するようにすれば, より簡単に実装できただろう。 その場合、API Gateway + Lambda + S3の構成は不要となるはずだ。

写真をホストするドメインとブログのドメインが異なる場合、CORSの設定が必要になる。

感想

AWS CDKは、簡単にインフラを構築できて便利だと感じた。 個人的なシステムを構築するにあたって、サーバーレスの構成はコストが抑えられるので、今後も利用していきたい。

comments powered by Disqus