DeployBoard / DeployBoard/deployboard-python

Implement Okta allowed_groups and allowed_domains

Aperta
#143 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
Python
Stelle
10
Fork
1
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**Is your feature request related to a problem? Please describe.**
We can support additional security around Okta auth by implementing `allowed_groups` and `allowed_domains`.
This would restrict who can even log into the application, although personally, I don't think there is any reason to deny anyone in your organization access to DeployBoard, but that's not my call to make about your org, so we'd like to support the option at least.

**Describe the solution you'd like**
After the Okta Oauth2 workflow, we retrieve the user's info and check if they are in any of the `allowed_groups` in the config.

We additionally would check the Okta domain the request is coming from to verify the domain matches the `allowed_domains` list. I kinda think this one is a bit redundant, since we require you to put the Okta client and secret in the config, so that should always match the domain associated with that client right? We're planning to support it anyway.

**Describe alternatives you've considered**
None

**Additional context**
None

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Start by tracing the Okta OAuth2 workflow through the user's info retrieval and configuration handling. Determine how allowed_groups and allowed_domains should be represented and checked after authentication; done means users outside the configured groups or domains cannot log in, while permitted users can proceed.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
authentication, backend
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.