今回挑戦したハンズオンはこちらになります。
個人的にはSAAを勉強していたことにより、イメージしやすかった印象でした。
実際に手を動かしてみて腑に落ちるところもあったので、改めて理解できたことがよかったかと感じています。
1. S3バケットを作成
以下の条件でS3バケットを作成。
バケットタイプ:汎用
バケット名:hol-bucket1
既存のバケットから設定をコピー:選択なし
オブジェクト所有者:ACL無効
このバケットのブロックパブリックアクセス設定:パブリックアクセスをすべてブロックのチェックを外す
バケットのバージョニング:無効にする
タグ:設定なし
暗号化タイプ: Amazon S3 マネージドキーを使用したサーバ側の暗号化( SSE-S3 )
バケットキー:有効にする
詳細設定:デフォルトのまま
2. ファイルアップロード
参照元にあったhtmlファイルを利用させていただきました。
ファイル名は「holfile1.html」としてVS Code経由で保存→アップロード。
※Macのテキストエディタ経由だと何故かHTMLファイルでもテキスト形式になってしまったので、Visual Studio Codeを使用。
3. ライフサイクル設定
ライフサイクルルール名:hol-test-rule1
ルールスコープを選択:バケット内のすべてのオブジェクトに適用
オブジェクトタグ:設定なし
オブジェクトサイズ:設定なし
ライフサイクルルールのアクション:「オブジェクトの現行バージョンを有効切れにする」を選択
オブジェクト作成後の日数:1
4. 静的ウェブサイトホスティング
・Efffect→今回はAllowなので許可。
・Principal→「* = 全員」、インターネットに全公開。
・Action→GetObjectのため、画像を見る、HTMLを表示する、ファイルをDLすること許可。
・Resource→hol-bucket1のすべてのオブジェクトが対象。
下記の要件で静的ウェブサイトホスティングを設定していきます。
静的ウェブサイトホスティング:有効にする
ホスティングタイプ:静的ウェブサイトをホストする
インデックスドキュメント:holfile1.html
エラードキュメント:設定なし
リダイレクトルール:設定なし
○プロパティ→静的ウェブサイトホスティング→バケットウェブサイトエンドポイント
ホームページが開かれるか確認。

無事確認がとれました。
5. httpsによるウェブサイトホスティング
Amazon CloudFront→CloudFrontディストリビューションを作成
Distribution name: hol-distribution1
Description:特になし
Distribution type: Single website or app
Domain:設定なし
Tags:設定なし
Origin Type: Amazon S3
s3 origin:ステップ2でindex.htmlを格納したバケット名を選択
Origin path:設定なし
オリジン設定: Use recommended orign settings
Cache settings:Use recommended cache settings tailored to servings S3 content
Web Application Firewall(WAF):セキュリティ保護を有効にしないでください
ディストリビューションドメインをコピーしブラウザで検索。
(https://「ディストリビューションドメイン名」/index.html)
→こちらでも動作確認!
最後に
SAA定番の静的ウェブサイトホスティングにおいてはhttpのみ、httpsについてはCroudFrontを使用など、王道の設定を改めて自分の中に落とし込めるいい機会になったと思います!
CloudFrontについてもまだまだ機能があるので、こちらについても理解を深めていきたいと思います。




