BlueBrain / BlueBrain/nexus

Generate temporary download links for files

Open
#3,021 0 comments 0 reactions 0 assignees View on GitHub
delta feature
Dominant language
Scala
Stars
301
Forks
76
PR merge metrics
No merged PRs in 30d

Description

Downloading large files from the browser is causing problems because in the current implementation as the user has to pass along its token, the file has to be loaded in memory before being saved on disk.

To solve this, we need to introduce temporary download links generated for users with the correct authorization.
A first request will be done by the user to a first link that will check its token and authorization to access the file.
If granted, a temporary link with an UUID allowing to download the file without the need to pass along the token will be sent back to the user.

The link allowing to generate this download link will be part of the metadata of the file.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the existing browser download entry point, token and authorization checks, and the file metadata response described in the issue. Determine where the temporary UUID link should be generated and validated, then verify that authorized users can download large files without passing the token or loading the file into memory.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
api, backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.