[Terraform] CloudFront のオリジンに Lambda Function URL をセットする

2024-11-21
Lambda 関数を作成し、その Function URL を CloudFront のオリジンにセットしてみる
・CloudFront
・CloudFront OAC
・Lambda (Web Adapter)
・アプリケーション (Go)
architecture.svg
アプリケーションは Go で作り Lambda Web Adapter を被せる
</>
Lambda Web Adapter を使う際は、Docker で関数を作るのがメジャーだと思う。
だが、AWS は Lambda Web Adapter 用の Lambda Layer を公開しており、それをアタッチしたところ Zip 形式でも動いた。
</>
CloudFront OAC がリクエストボディのハッシュ計算に対応していない様子。
POST or PUT を叩くとエラーが返ってくる。

ワークアラウンドはいくつかあるが、プロダクションでの使用は要検討。