Scegliere il meccanismo di autenticazione corretto

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Per le applicazioni che si interfacciano con Azure DevOps Services, è necessario eseguire l'autenticazione per ottenere l'accesso alle risorse come le API REST. Questo articolo fornisce indicazioni utili per scegliere il meccanismo di autenticazione appropriato per l'applicazione.

Nella tabella seguente viene descritto il meccanismo di autenticazione consigliato per vari tipi di applicazione. Per iniziare, vedere le descrizioni di base, gli esempi e gli esempi di codice seguenti.

Tipo di applicazione Descrizione Esempio Meccanismo di autenticazione Esempi di codice
Lato client interattivo (REST) Applicazione client che consente all'utente di chiamare le API REST di Azure DevOps Services Applicazione console che enumera i progetti in un'organizzazione Microsoft Authentication Library (MSAL) sample
Lato client interattivo (libreria client) Applicazione client che consente l'interazione dell'utente chiamando le librerie client di Azure DevOps Services Applicazione console che enumera i bug assegnati all'utente corrente Librerie client sample
JavaScript interattivo Applicazione JavaScript basata su GUI App a pagina singola AngularJS che visualizza informazioni sul progetto per un utente Microsoft Authentication Library per JavaScript (MSAL JS) sample
Token di accesso personale Token di connessione per accedere alle proprie risorse Usare il pat al posto della password. Carezze
Lato client non interattivo Applicazione solo testo headless sul lato client App console che visualizza tutti i bug assegnati a un utente Profilo dispositivo sample
App sul lato client interattiva destinata ad Azure DevOps Applicazione client che consente l'interazione dell'utente autentica gli utenti di Azure DevOps Applicazione console che consente agli utenti di Azure DevOps di visualizzare i bug assegnati Libreria client (interattiva e autenticazione di Windows) sample
Web interattivo Applicazione Web basata su GUI che richiede il consenso dell'utente Dashboard Web personalizzato che visualizza riepiloghi di compilazione Azure DevOps OAuth sample
Entità servizio o identità gestite Applicazione con accesso alle risorse di Azure DevOps dell'organizzazione Funzione di Azure per creare elementi di lavoro Entità servizio e identità gestite sample
Applicazione Azure DevOps Server App Azure DevOps Server con la libreria CLIENT OM Estensione azure DevOps Server che visualizza i dashboard dei bug del team Librerie client sample
Estensione di Azure DevOps Services Estensione di Azure DevOps Services Schede Agile VSS Web Extension SDK sample

Per informazioni di base sui concetti relativi alla sicurezza e all'identità in Azure DevOps, vedere Informazioni sulla sicurezza e l'identità. Per altre informazioni su come archiviare le credenziali, vedere Archiviazione delle credenziali per Azure DevOps.

L'abilitazione dell'autenticazione di base di IIS invalida l'uso di paT per azure DevOps Server

Per altre informazioni, vedere Uso dell'autenticazione di base di IIS con Azure DevOps in locale.

Domande frequenti

D: Perché uno degli account del servizio non può accedere all'API REST di Azure DevOps?

R: L'account del servizio potrebbe non avere "materializzato". Poiché l'accesso non è possibile con un account del servizio che non dispone di autorizzazioni di accesso interattivo, vedere questa soluzione alternativa.

D: Sto creando un'applicazione sul lato client interattiva. È consigliabile usare le librerie client di Azure DevOps Services o le API REST di Azure DevOps Services?

R: È consigliabile usare le librerie client di Azure DevOps Services sulle API REST quando si accede alle risorse di Azure DevOps Services. Sono più semplici e più facili da gestire quando si verificano modifiche della versione agli endpoint REST. Se la funzionalità non è presente nelle librerie client, MSAL è il meccanismo di autenticazione migliore da usare con le API REST.

D: Questo materiale sussidiario è valido solo per Azure DevOps Services o per gli utenti locali di Azure DevOps Server?

R: Queste linee guida sono destinate principalmente agli utenti di Azure DevOps Services. Le librerie client sono una serie di pacchetti creati specificamente per estendere la funzionalità di Azure DevOps Server. Per gli utenti locali, è consigliabile usare le librerie client, l'autenticazione di Windows o i token di accesso personale per l'autenticazione per un utente.

D: Cosa accade se si vuole che l'applicazione esegua l'autenticazione con Azure DevOps Server e Azure DevOps Services?

R: La procedura consigliata consiste nell'avere percorsi di autenticazione diversi per Azure DevOps Server e Azure DevOps Services. È possibile usare requestContext per scoprire quali sono i risultati e quindi usare il meccanismo migliore per ognuno di essi. Se invece si vuole una soluzione unificata, i criteri di configurazione funzionano per entrambi.