Download file redirecting from Amazon S3 to Client
<p>I'm very novice with Amazon S3 and I would like to build a solution that maybe not exist.</p>

<p>I have to build a web application (Java or PHP Backend) where the user logins and downloads files. The web server (Tomcat or Apache) validates the user and allows the download from Amazon S3.
When I've worked with a CMS the files were small and there were few requests. So, the flow was:</p>

<pre><code>Client (User) &gt; Server (user validation) &gt; CMS (get file) &gt; Server &gt; Client (User)
</code></pre>

<p>Now, the files are bigger and I would like to get the next flow:</p>

<pre><code>Client (User) &gt; Server (user validation) &gt; Amazon S3 &gt; Client (User)
</code></pre>

<p>My goal is to improve the performance of my server and avoid the excess traffic of files when the user gets one.
Is it possible? </p>

<p>My first approach (not implemet yet!) is a sendredirect from my server to Amazon S3:</p>

<p>User requests <code>/file1</code> => Server "translates" <code>/file1</code> to <code>/company.s3.amazon/mybucket/file1.pdf</code> and does the sendredirect to Amazon S3 link.</p>

<p>With this approach I think I can't validate IAM user (I don't use any API) but I also think I can protect the content with a Bucket Policy filtering by server IP address .</p>

<p>Thanks.</p>