本書は、オンプレミス環境で動かしてきたWebアプリケーションを、無理なくAWSへ移行したいと考えている方に向けた一冊です。本書は、EC2を用いた従来型構成からスタートし、S3によるフロントエンド分離、さらにLambda+API Gatewayによるサーバーレス化へと段階的に移行していく流れを、実際に手を動かしながら体験できる構成になっています。CloudFormationを用いたInfrastructure as Codeにも触れ、構築・削除を繰り返しながら学べる点も特徴です。SPA+API構成における認証・認可の考え方や、OIDCを用いたGoogle ID連携の設定手順とその採用理由についても触れており、AWS初心者から「次の一歩」を考えているエンジニアまで、実践的な学びを提供します。
【目次】
はじめに
第1章 オンプレミスのWebアプリ構成から考える
第2章 Webアプリケーションを仮想サーバー(EC2)で公開する
第3章 フロントエンドをS3でホスティングする
第4章 バックエンドのAPI機能を、Lambda + API Gatewayに移設する
付録A 認証認可とSPAの位置づけ
付録B Webアプリケーションにおける認可のベストプラクティスとサンプルアプリの位置づけ
付録C Google Cloud Platformが提供するIdPに対してのサンプルアプリの登録手順
付録D AWS課金アラームの設定方法
付録E 参考サイト
あとがき
-
サンプルコードについて
-
動作確認環境
-
免責事項
-
表記関係について
-
1.1 オンプレミス環境でのハードウェア構成例
-
1.2 AWS環境での対応関係
-
2.1 解説に利用するサンプルアプリの動作仕様(画面遷移など)について
-
2.2 JWTへ署名する際に使うキーペアを作成
-
2.3 利用する外部IdP(GoogleのIdP)の設定
-
2.4 ローカルサーバーでアプリを起動しログイン動作を確認
-
2.5 EC2ベースでの公開に必要なインフラをAWSに構築
-
2.6 AWSに公開したWebアプリを動作確認
-
4.1 APIの実装をLambdaで動作する形式に切り出し、ZipにしてS3に配置
-
4.2 API Gatewayを経由したLambda関数のエンドポイントを公開
-
4.3 フロントエンドの設定を変更して再公開
-
4.4 AWSにLambdaへ移設して公開したWebアプリを動作確認
-
A.1 認証と認可がなぜ必要か?
-
A.2 認証サーバーとバックエンドの通信で求められること
-
A.3 認可サーバーとフロントエンドの通信で求められること
-
A.4 SPAではなく従来のサーバーサイドレンダリング型だと?
付録B Webアプリケーションにおける認可のベストプラクティスとサンプルアプリの位置づけ