Project-MONAI / Project-MONAI/MONAILabel

Upload cache session based isolation

Open
#1,829 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
891
Forks
269
Avg merge
15h 41m
Merged PRs (30d)
1

Description

My understanding is that the MONAILabel upload cache location is a single allocation that is shared among potentially multiple api clients. The file names within the cache are as per the original uploaded image without any obfuscation or any assurance of uniqueness.

IMO this has a number of drawbacks in utilising MONAILabel as an API presented service.

  1. There is the possibility of users uploading images with the same name and casing a conflict.
  2. There is the possibility of potentially sensitive images to be accessed via unauthorised users.

This could greatly reduce the potential use cases and operational workflows of MONAILabel.

I would like MONAILabel to implement a level of isolation and/or obvuscation within the cache to ensure access of images is a 1:1 with user access. This could be linked to a specific user session.

ATM we are ensuring that MONAILabel implementations are dedicated to a single individual or group via infrastructure segregation. Either by running the API on a specific host or measures of network microsegmentation and that the implementation is ephemeral in nature.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing MONAILabel's upload-cache handling and API session or client isolation. Determine how cache names and access checks are currently defined, then clarify the intended session boundary and threat model. Done means uploads cannot collide or be accessed across unauthorized users, with tests covering the isolation behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.