Project-MONAI / Project-MONAI/MONAILabel

OAuth2 Authorization Code Grant with PKCE Flow auth.py

Open
#1,742 2 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

Is your feature request related to a problem? Please describe.
Supporting deployment of MONAI Label at scale, providing efficient resource utilisation and implementing controls around resource and data access. Common industry practice for API driven workloads is to utilise OAuth2 and with the upcoming OAuth 2.1 specification it would require the "OAuth2 Authorization Code Grant with PKCE".

Describe the solution you'd like
auth.py already includes OAuth2 basic authentication. I would like this to extend to OAuth2 Authorization Code Grant with PKCE.

Describe alternatives you've considered
I am not aware of alternative solutions to provide authz for API driven workloads that integrate at a level of OAuth at this time.

Additional context

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 reading auth.py to understand the existing OAuth2 basic authentication. Trace how authentication and API access are currently handled, then define the required Authorization Code Grant with PKCE behavior and its access controls. Done means auth.py supports the requested OAuth2 flow for scaled MONAI Label deployments.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.