lundi 25 juin 2018

How load private Amazon S3 files with javascript?

I have a difficult problem:

I am using OpenSeadragon for viewing large photos on my private Laravel webapplication. The photos and tiles are stored in my private Amazon S3 bucket.

But how can I access this private photos in my javascript OpenSeadragon component in a safe what?

What I have done: I created a router function in my Laravel application that redirects to Amazon S3:

function getTiles($tile) {
  // validation && authorisation
  return redirect()->to(\Storage::disk('s3')->temporaryUrl($tile, now()->addMinutes(5)));
}

And I have configured my OpenSeadragon component (according https://openseadragon.github.io/examples/tilesource-custom/) so this component loads the tiles from my router function.

This works, but the problem is: it is very slow, because OpenSeadragongs loads > 100 tiles per second.

I am searching for a good, fast and safe solution for this problem...

I can change my Amazon OpenSeadragon tiles folder visibility to "public" with a difficult random foldername, but anyone who know this foldername, he can download the photo. That's not a good solution...



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire