S3に配置したプライベートファイルを、Webシステムにログイン済みユーザーにのみ参照可能にしたい

実現したいこと

AWS学習中の者です。
S3に配置したプライベートファイルを、Webシステムにログイン済みユーザーにのみ参照可能にしたく、ご教授いただけますと幸いです。

具体的には、

以下のような処理フローを想定しています。

① S3に「パブリックアクセスをすべてブロック」のバケットを作成する

② 上記のバケットに、「test.jpg」(※pngでもpdfでも〇)を配置する

③ 自前のWebシステムでログイン認証済みのユーザーは、Webシステム内の画面で、「test.jpg」を表示することができる

図解

〇 画像を表示できる例
Webシステムにログイン認証成功しているため、S3に配置されたリソースを表示できる
イメージ説明

× 画像を表示できない例
Webシステムにログイン認証せず、S3に配置されたリソースのURLを直接ブラウザに入力しても、ブロックされる
イメージ説明

補足

Webシステムは、Java(SpringBoot)です。
またサーバーは、EC2を使用しています(RDSも)

S3で「パブリックアクセスをブロック」の状態にしながら、
Webシステムにログイン済みのユーザーだけS3リソースにアクセスでき、
画面(HTML)上に表示することができる... ということがしたいです。

素人質問で大変恐縮ですが、良い方法をご存じでしたら、コメントいただけますと幸いです。
何卒よろしくお願い致します。

コメントを投稿

0 コメント