microsoft / microsoft/azure-devops-python-api

Authentication through Personal Access Token creates organisational coupling

Aperta
#500 3 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Python
Stelle
684
Fork
218
Merge medio
8g 10h
PR unite (30g)
1

Descrizione

Currently, the only documented way to use this library is to authenticate with a Personal Access Token.

This seems wrong, as:

  • From what I know about them, Personal Access Tokens are associated to human accounts
    This means an application access to an Azure DevOps instance is tightly coupled to the existence of a human person in an organisation, which means applications access will break depending on other life cycles.
  • Personal Access Token also require an expiration date, meaning applications access will break regularly, forcing some manual (human) extra credentials management on top of, and separate from, the one associated with the parent account.

Is there a plan to support other kinds of authentication scheme with Azure DevOps (Server)?

One could think of an OAuth2 process, for instance, allowing different flows:

  • H2M, much like what is achieved through PAT, without any extra (token, on top of account), manual, token lifecycle management
  • M2M which would allow managing applications-specific secrets

Both flow isolate authentication of the application from any other organisational resource, and allow delegation of authorisation and grants lifecycle to a dedicated, potentially automated third-party.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Iniziare esaminando l'autenticazione documentata della libreria tramite Personal Access Token e i flussi di autenticazione OAuth2 o dell'applicazione supportati da Azure DevOps Server. Confrontare i requisiti di H2M e M2M, quindi definire il flusso supportato, il ciclo di vita delle credenziali e la documentazione o i test necessari per dimostrare il completamento.

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

Valutazione

Stack tecnologico
azure, python
Ambito
api, authentication, cloud
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.