Demo static site for S3 Password Agent (GitHub source)

The demo server may need to wake up first, please give it some time...

This is a static site, hosted on GitHub Pages. It uses S3 Password Agent to handle the password-protected download links for Amazon AWS S3 hosted files. Follow this link to download the sample file:

When you click on the link, you should see a file download page that first prompts for sign-in using Auth0 and then initiates the file download. The file download uses an auto-generated temporary signed S3 URL.

How It Works

Service setup steps:

  • Uploaded file example-file.png to a private AWS S3 bucket named s3-auth0-demo-restricted-area
    • raw restricted URL: https://s3-auth0-demo-restricted-area.s3.amazonaws.com/example-file.png
  • Deployed S3 Password Agent to Heroku at s3-auth0-demo.herokuapp.com
    • configured S3 bucket, key ID and secret
    • configured content whitelist as ** (all files)
    • configured Auth0 domain, client ID and secret

Included widget script near the top:

<script src="https://s3-auth0-demo.herokuapp.com/s3-links.js"></script>

Finally, included download link:

<a href="#s3/example-file.png">Download Sample File</a>

The static site page, when loaded in browser, invokes the deployed link widget that updates any link URL that starts with #s3/ to point to the password agent server. When visitors follow those links, the password agent server displays a landing page that prompts for login username and password, and then proceeds with the file download.

File downloads happen via auto-generated temporary signed S3 URLs that expire in a few minutes; this way there is no extra bandwidth cost incurred on the deployed password agent instance.

See more at the S3 Password Agent source page on GitHub.