AWS cloudfront から s3 への Origin Access Identityを使ったアクセス

S3で静的サイトを公開するのですが、その際、直接S3へのアクセスを許可したくないので、特定のディストリビューションでのCloudfront経由のみから「Origin Access Identity」を使い特定アクセスを許可するよう設定を進めていました。

S3の設定で、

とし、Cloudfrontの設定を下記の記事を参考に設定しました。

https://dev.classmethod.jp/cloud/aws/cloudfront-s3-origin-access-identity/

※大変参考になりました。ありがとうございます。


ただ、設定を完了し、いざ試す際に想定どおり動きませんでした。

S3直アクセスは、403でアクセスできないのはわかるのですが、

Cloudfrontで生成されるURLにアクセスすると、s3のURLへリダイレクトされてしまい、S3に直でアクセスしているのと同じ挙動になってしまいました。

色々と調べてたら、時間が立てばリダイレクトしなくなる

https://forums.aws.amazon.com/thread.jspa?threadID=216814

ということでした笑。

cloudfrontのディストリビューションは「deployed」になってるのに、その後も時間が少しかかるみたいですね。 落ち着いて待ちましょう。

一応、s3の設定内容の整理です。

静的ウェブサイトホスティング

これは、そのままの意味で、webとして、ホスティングする際に必ずONにする必要があります。 cloudfront経由のみのアクセスを可能にする場合OFFにします。

Amazon S3 での静的ウェブサイトのホスティング

アクセス権限やパケットポリシーについて

アクセス権限は、あくまで、そのパケット自体や、各ファイルに設定するアクセスの権限です。 パケット全体のアクセスをパブリックにせず、特定のファイルのみ、パブリックにすることも可能です。

Cloudfront経由のみのパブリック・アクセスにしたい場合は、パブリックにしない デスク

U-chan ( Nobuyuki Ukai )

学生時代は建築やデザインを専攻していたが、Yahoo!Japanにエンジニアとして運良く入社し、2年半で波情報を配信する波伝説に転職。3年後、Yahoo!時代の先輩の立ち上げたベンチャーに転職。数年後、伊豆下田に移住し、ゲストハウスを開業しながらリモートでエンジニアを続けたが、焼肉店の開業とともに株式会社UKAIを立ち上げ、法人成り。その後、カフェとゲストハウスをもう一軒開業し、現在は焼肉店、カフェ、ゲストハウス2件目を運営。今季は自社Webサイトの立ち上げ予定!

comments powered by Disqus