Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Un token di accesso personale funge da password alternativa per l'autenticazione in Azure DevOps. Questo token di accesso personale identifica l'utente e determina l'accessibilità e l'ambito di accesso. Trattare le reti PAT con lo stesso livello di cautela delle password.
Quando si usano gli strumenti Microsoft, viene riconosciuto e supportato l'account Microsoft (MSA) o l'ID Microsoft Entra. Se si usano strumenti che non supportano gli account Microsoft Entra o se si preferisce non condividere le credenziali primarie, prendere in considerazione l'uso di PTP come metodo di autenticazione alternativo. È tuttavia consigliabile usare i token Microsoft Entra anziché i token PAT ogni volta che sia possibile.
Importante
Consigliamo i più sicuri token Microsoft Entra rispetto ai token di accesso personali, che sono a rischio più elevato. Altre informazioni sui nostri sforzi per ridurre l'utilizzo di PAT. Esaminare le linee guida per l'autenticazione per scegliere il meccanismo di autenticazione appropriato per le proprie esigenze.
Prerequisiti
Categoria | Requisiti |
---|---|
Autorizzazioni | Autorizzazione per l'accesso e la modifica delle impostazioni utente in cui vengono gestite le reti PAT. - Passare a del profilo e selezionare Impostazioni utente>token di accesso personali. Se è possibile visualizzare e gestire qui i PTS, si dispone delle autorizzazioni necessarie. - Passare al progetto e selezionare Impostazioni progetto>Autorizzazioni. Trovare l'account utente nell'elenco e controllare le autorizzazioni assegnate all'utente. Cercare le autorizzazioni correlate alla gestione dei token o delle impostazioni utente. - Se l'organizzazione dispone di politiche attive, potrebbe essere necessario che un amministratore conceda autorizzazioni specifiche o ti aggiunga a una lista di autorizzazione per creare e gestire i token di accesso personale. - I PATs sono collegati all'account utente che ha coniato il token. A seconda delle attività eseguite dal PAT, potrebbe essere necessario disporre di più permessi. |
Livelli di accesso | Almeno accesso di base. |
Attività | Usare i PAT solo quando necessario e sempre ruotarli regolarmente. Vedere la sezione relativa alle procedure consigliate per l'uso di PTS. |
Creare un PAT
Accedi alla tua organizzazione (
https://dev.azure.com/{Your_Organization}
).Dalla home page, aprire le impostazioni utente
e selezionare Token di accesso personale.
Selezionare + Nuovo token.
Assegnare un nome al token, selezionare l'organizzazione in cui si vuole usare il token e quindi impostare il token per scadere automaticamente dopo un numero di giorni impostato.
Selezionare gli ambiti per questo token da autorizzare per le tue attività specifiche.
Ad esempio, per creare un token per un agente di compilazione e versione per l'autenticazione in Azure DevOps, impostare l'ambito del token su Pool di agenti (Lettura e gestione). Per leggere gli eventi del log di controllo e gestire o eliminare flussi, selezionare Leggi log di controllo e quindi selezionare Crea.
Nota
L'amministratore potrebbe limitarti nella creazione di PAT con ambito completo o consentirti solo PAT con ambito di pacchetto. Contatta il tuo amministratore per essere inserito nella lista consentita se hai bisogno di accedere a ulteriori ambiti. Alcuni ambiti, ad esempio ,
vso.governance
potrebbero non essere disponibili nell'interfaccia utente se non sono per uso pubblico diffuso.Al termine, copiare il token e archiviarlo in una posizione sicura. Per la sicurezza, non viene visualizzata di nuovo.
Usare PAT ovunque siano necessarie le credenziali utente per l'autenticazione in Azure DevOps.
Importante
- Considera un PAT con la stessa cautela della tua password e mantienilo riservato. NON CONDIVIDERE PATS.
- Per le organizzazioni supportate da Microsoft Entra ID, è necessario effettuare l'accesso con il nuovo PAT entro 90 giorni, altrimenti diventerà inattivo. Per altre informazioni, vedere Frequenza di accesso utente per Accesso Condizionale.
Notifiche
Durante la durata di un pat, gli utenti ricevono due notifiche: una alla creazione del pat e un'altra sette giorni prima della scadenza.
Dopo aver creato un pat, è possibile ricevere una notifica simile all'esempio seguente. Questa notifica serve per confermare che il Personal Access Token (PAT) è stato aggiunto con successo alla tua organizzazione.
Un messaggio di posta elettronica di notifica di scadenza viene inviato tre giorni prima della scadenza. Se l'amministratore ha rimosso la tua possibilità di creare PAT nell'organizzazione, l'email indica che non è più possibile rigenerare i PAT. Contatta il tuo amministratore della raccolta di progetti per essere incluso in un elenco di elementi consentiti per continuare a creare PAT nell'organizzazione.
Per altre informazioni, vedere Configurare un server SMTP e personalizzare la posta elettronica per avvisi e richieste di feedback.
Notifica imprevista
Se si riceve una notifica PAT inaspettata, potrebbe significare che un amministratore o uno strumento ha creato un PAT per te. Ecco alcuni esempi:
- Un token denominato "git:
https://dev.azure.com/{Your_Organization}
on YourMachine" viene creato quando ci si connette a un repository Git di Azure DevOps tramite git.exe. - Un token denominato "Service Hooks: Servizio app di Azure: Distribuisci app Web" viene creato quando l'utente o un amministratore configura una distribuzione di app Web del servizio app di Azure.
- Un token denominato "WebAppLoadTestCDIntToken" viene creato quando il test di carico Web viene configurato come parte di una pipeline da parte dell'utente o di un amministratore.
- Un token denominato "Integrazione di Microsoft Teams" viene creato quando viene configurata un'estensione per la messaggistica di integrazione di Microsoft Teams.
Avviso
- Revoca il PAT (e cambia la tua password) se sospetti che esista per errore.
- Controlla con l'amministratore se sei un utente di Microsoft Entra per verificare se un'origine o una posizione sconosciuta ha avuto accesso alla tua organizzazione.
- Esaminare le domande frequenti sugli inserimenti accidentali di PAT (Token di Accesso Personale) ai repository GitHub pubblici.
Usare un PAT
Il pat viene usato come identità digitale, in modo analogo a una password. È possibile usare le reti AP come modo rapido per eseguire richieste occasionali o creare un prototipo di un'applicazione in locale. Usare un pat nel codice per autenticare le richieste delle API REST e automatizzare i flussi di lavoro includendo il pat nell'intestazione di autorizzazione della richiesta.
Importante
Quando il codice dell'app funziona, passare a Microsoft Entra OAuth per acquisire i token per conto degli utenti dell'app o utilizzare un principale del servizio o un'identità gestita per acquisire i token come applicazione. Non è consigliabile continuare a eseguire app o script con token di accesso personale per un lungo periodo. I token Microsoft Entra possono essere usati ovunque venga usato un pat. Prendere in considerazione l'acquisizione di un token Microsoft Entra tramite l'interfaccia della riga di comando di Azure per le richieste ad hoc.
Per fornire il pat tramite un'intestazione HTTP, è prima necessario convertirlo in una Base64
stringa. Può quindi essere fornito come intestazione HTTP nel seguente formato.
Authorization: Basic BASE64_USERNAME_PAT_STRING
Modificare un PAT (token di accesso personale)
Eseguire la procedura seguente per:
- Rigenerare un pat per creare un nuovo token, che invalida quello precedente.
- Estendere un pat per aumentare il periodo di validità.
- Modificare l'ambito di un token di accesso personale per cambiarne le autorizzazioni.
Dalla home page, aprire le impostazioni utente
e selezionare Token di accesso personale.
Selezionare il token da modificare e quindi Modifica.
Modificare il nome del token, la scadenza del token o l'ambito di accesso associato al token e quindi selezionare Salva.
Revocare un token di accesso personale
È possibile revocare un pat in qualsiasi momento per questi e altri motivi:
- Violazione della sicurezza: revocare immediatamente un PAT se si sospetta che sia compromesso, trapelato o esposto nei log o nei repository pubblici.
- Non più necessario: revocare un token di accesso personale quando il progetto, il servizio o l'integrazione per cui è stato creato è stato completato o interrotto.
- Conformità ai criteri: revocare un Personal Access Token (PAT) per applicare le politiche di sicurezza, soddisfare i requisiti di conformità o rispettare le pianificazioni di rotazione dei token dell'organizzazione.
- Modifiche utente: Revocare un PAT quando un membro del team lascia l'organizzazione oppure cambia ruolo e non ha più bisogno di accedere.
- Riduzione dell'ambito: revocare e ricreare un token di accesso personale con autorizzazioni ridotte quando è necessario limitare le funzionalità di accesso.
- Manutenzione regolare: Revocare un PAT come parte dell'igiene di routine della sicurezza e della gestione del ciclo di vita dei token.
Per revocare un Personal Access Token (PAT), seguire questi passaggi:
Dalla home page, aprire le impostazioni utente
e selezionare Token di accesso personale.
In Sicurezza selezionare Token di accesso personali. Selezionare il token per il quale si vuole revocare l'accesso e quindi selezionare Revoca.
Selezionare Revoca nella finestra di dialogo di conferma.
API di gestione del ciclo di vita PAT
Le API di gestione del ciclo di vita pat possono essere utili quando la gestione di grandi volumi di token tramite l'interfaccia utente non è sostenibile. La gestione della rotazione pat a livello di codice consente anche di ruotare regolarmente i token di accesso e ridurre la durata predefinita. L'app Python di esempio può essere configurata con il tenant Microsoft Entra e l'organizzazione Azure DevOps.
Alcuni aspetti da notare su queste API:
- I token di accesso Microsoft Entra sono necessari per accedere a questa API, come in genere è consigliabile usare una forma più avanzata di autenticazione quando si coniano nuovi token.
- Solo gli utenti o le app che utilizzano un flusso "on-behalf-of user" (per conto di un utente) possono generare TAP. Le app che usano flussi "on-behalf-of-application" o flussi di autenticazione che non rilasciano token di accesso Microsoft Entra non sono validi per l'uso con questa API. Di conseguenza, le entità servizio o le identità gestite non possono creare o gestire PAT.
- In precedenza, le API di gestione del ciclo di vita PAT supportano solo l'ambito
user_impersonation
, ma oravso.pats
sono disponibili e l'ambito consigliato da usare con queste API. Downscope tutte le app che in precedenza si basavano suuser_impersonation
per chiamare queste API.
Modifiche al formato
A partire da luglio 2024, è stato aggiornato il formato delle stringhe PAT per migliorare il rilevamento dei segreti nelle offerte di strumenti di rilevamento PAT e partner perse. Questo nuovo formato PAT include bit più identificabili per migliorare la frequenza di rilevamento dei falsi positivi in questi strumenti di rilevamento e attenuare le perdite rilevate più velocemente.
- I nuovi token sono ora lunghi 84 caratteri, con 52 caratteri di dati casuali, che migliorano l'entropia complessiva, rendendo i token più resistenti agli attacchi di forza bruta.
- I token emessi dal servizio includono una firma fissa
AZDO
nelle posizioni 76-80.
Se stai utilizzando un token di accesso personale rilasciato prima di quella data, rigenera il PAT. Se si esegue l'integrazione con i token PAT e la convalida PAT è incorporata, aggiornare il codice di convalida in modo da supportare sia le lunghezze dei nuovi token sia quelle esistenti.
Avviso
Entrambi i formati rimangono validi per il prossimo futuro. Man mano che l'adozione del nuovo formato aumenta, potremmo ritirare i vecchi PAT da 52 caratteri.
Migliori pratiche per l'utilizzo dei PAT
Prendere in considerazione le alternative
- Acquisire un token Microsoft Entra tramite Azure CLI per le richieste ad hoc invece di generare un PAT più duraturo.
- Usare gestori di credenziali come Git Credential Manager o Azure Artifacts Credential Manager per semplificare la gestione delle credenziali, con l'autenticazione impostata su
oauth
o i token di Microsoft Entra.
Creazione di TAP
- Non inserire dati personali nel nome PAT. Non rinominare il nome pat in modo da includere alcuni o tutti i token PAT effettivi.
- Evitare la creazione di protocolli PAT globali, a meno che non sia necessario in tutte le organizzazioni.
- Usare un token diverso per ogni caso di flusso o utente.
- Seleziona solo gli ambiti minimi necessari per ciascun PAT. Concedere il privilegio minimo necessario per l'attività specifica e creare token PAT separati con ambiti limitati per flussi di lavoro diversi anziché usare un singolo token con ambito generico. Se il PAT ha bisogno di autorizzazioni di sola lettura, non consentire autorizzazioni di scrittura fino a quando non sono necessarie.
- Mantenere breve la durata dei PAT (settimanale è ideale, ancora più breve è perfino meglio).
Gestione di PAT
- Non condividere i tuoi PATs!
- Archivia i tuoi PAT in una soluzione di gestione delle chiavi sicura, ad esempio Azure KeyVault.
- Ruota o rigenera regolarmente i PAT tramite UI o le API di gestione del ciclo di vita dei PAT.
- Revocare i PT quando non sono più necessari.
- Ruotare i propri PAT per utilizzare il nuovo formato PAT per un migliore rilevamento e la revoca dei segreti trapelati dai nostri strumenti proprietari.
Per gli amministratori
- Gli amministratori tenant possono impostare criteri per limitare la creazione globale di PAT, la creazione completa di PAT con ambito e la durata di PAT di lunga durata.
- Gli amministratori tenant possono revocare i token di accesso personali per gli utenti dell'organizzazione se i token sono compromessi.
- Gli amministratori dell'organizzazione possono limitare la creazione di pat in un'organizzazione. Se sono ancora necessari i PAT, limitarne la creazione solo a quelli nell'elenco consentito.
Domande frequenti
D: Perché non è possibile modificare o rigenerare un pat con ambito a una singola organizzazione?
Accedi all'organizzazione in cui il tuo PAT è definito. È possibile visualizzare i token PAT quando si è connessi a qualsiasi organizzazione nello stesso ID Di Microsoft Entra modificando il filtro ambito di accesso , ma è possibile modificare solo i token con ambito organizzazione quando si è connessi all'organizzazione specifica.
D: Cosa accade a un pat se un account utente è disabilitato?
R: Quando un utente viene rimosso da Azure DevOps, il pat invalida entro 1 ora. Se l'organizzazione è connessa all'ID Microsoft Entra, il pat invalida anche nell'ID Microsoft Entra, perché appartiene all'utente. Si consiglia di trasferire il token di accesso personale (PAT) a un altro account utente o di servizio per mantenere i servizi in esecuzione.
D: Posso usare i PAT con tutte le API REST di Azure DevOps?
R: No. È possibile usare i token PAT con la maggior parte delle API REST di Azure DevOps, ma le organizzazioni e i profili e le API del ciclo di vita della gestione PAT supportano solo i token Microsoft Entra.
D: Cosa succede se carico accidentalmente il mio token di accesso personale in un repository pubblico su GitHub?
R: Azure DevOps esegue la scansione dei PAT presenti nei repository pubblici su GitHub. Quando rileviamo un token compromesso, inviamo immediatamente una email dettagliata al proprietario del token e registriamo un evento nel log di controllo dell'organizzazione Azure DevOps. Si consiglia agli utenti interessati di attenuare il problema revocando il token trapelato e sostituendolo con un nuovo token.
A meno che non sia stato disabilitato il criterio di Revoca automatica dei token di accesso personali persi, revochiamo immediatamente i token di accesso personali persi. Per altre informazioni, vedere Revocare automaticamente i PAT trapelati.
D: È possibile usare un token di accesso personale come ApiKey per pubblicare pacchetti NuGet in un feed di Azure Artifacts usando la riga di comando dotnet/nuget.exe?
R: No. Azure Artifacts non supporta il passaggio di un token di accesso personale come chiave API. Quando si usa un ambiente di sviluppo locale, è consigliabile installare il provider di credenziali di Azure Artifacts per l'autenticazione con Azure Artifacts. Per altre informazioni, vedere gli esempi seguenti: dotnet, NuGet.exe. Se si desidera pubblicare i pacchetti usando Azure Pipelines, utilizzare l'attività NuGet Authenticate per eseguire l'autenticazione con il feed. Vedi esempio.
D: Perché il mio PAT smetteva di funzionare?
R: L'autenticazione pat richiede di accedere regolarmente ad Azure DevOps usando il flusso di autenticazione completo. L'accesso una volta ogni 30 giorni è sufficiente per molti utenti, ma potrebbe essere necessario accedere più frequentemente a seconda della configurazione di Microsoft Entra. Se il PAT smette di funzionare, prova prima di tutto ad accedere all'organizzazione e completa la richiesta di autenticazione completa. Se il PAT non funziona ancora, controlla se è scaduto.
L'abilitazione dell'autenticazione di base di IIS invalida l'uso di PTS per Azure DevOps Server. È consigliabile mantenere sempre l'autenticazione di base IIS disattivata .
Avviso
Se si usa Git con l'autenticazione di base di IIS, Git si interrompe perché richiede token di accesso personale (PAT) per l'autenticazione utente. È possibile aggiungere un'intestazione aggiuntiva alle richieste Git per usarla con l'autenticazione di base di IIS, ma questa azione non è consigliata. L'intestazione aggiuntiva deve essere utilizzata in tutte le installazioni di Azure DevOps Server, poiché anche l'autenticazione di Windows impedisce l'uso di token di accesso personali. L'intestazione aggiuntiva deve includere anche una codifica base 64 di user:PAT
.
git -c http.extraheader='Authorization: Basic [base 64 encoding of "user:password"]' ls-remote http://tfsserver:8080/tfs/DefaultCollection/_git/projectName
D: Come si creano token di accesso che non sono associati a una persona?
A: Tutti i Token di Accesso Personale sono associati all'identità utente che li ha creati. Le applicazioni non sono in grado di creare PAT.
In Azure DevOps è possibile generare token di accesso che non sono collegati a un utente specifico usando i token Microsoft Entra emessi da un'entità servizio dell'applicazione o da un'identità gestita. Per le pipeline, usare le connessioni al servizio per autenticare e autorizzare in modo sicuro le attività automatizzate senza basarsi su credenziali specifiche dell'utente.
D: Come è possibile rigenerare/ruotare i PT tramite l'API? Ho visto questa opzione nell'interfaccia utente, ma non vedo un metodo simile nell'API.
R: La funzionalità "Rigenera" disponibile nell'interfaccia utente esegue effettivamente alcune azioni, che possono essere replicate tramite l'API.
Per ruotare il pat, seguire questa procedura:
- Visualizzare i metadati PAT con una chiamata GET
- Creare un nuovo pat con l'ID pat precedente usando una chiamata POST .
- Revoca il vecchio PAT utilizzando una chiamata DELETE.
D: Per quanto tempo rimangono visibili nell'elenco dei token di Azure DevOps i token scaduti, revocati o inattivi?
R: Le reti PAT scadute o revocate non possono più essere usate o rigenerate. Questi token inattivi rimangono visibili per diversi mesi dopo la scadenza o la revoca prima di essere rimossi automaticamente dalla visualizzazione.
D: Quando tento di usare un'app Microsoft Entra per chiamare le API di gestione del ciclo di vita PAT, viene visualizzato un popup "Serve approvazione amministratore".
R: I criteri di sicurezza del tenant richiedono il consenso amministratore prima che le applicazioni possano accedere alle risorse dell'organizzazione nell'organizzazione. Contatta l'amministratore del tenant.
Q: È possibile usare un principale del servizio per creare o gestire i PAT?
R: No, i PAT appartengono a un'identità utente. I principali del servizio o le identità gestite di Microsoft Entra possono generare token Microsoft Entra di breve durata che possono essere utilizzati nella maggior parte dei casi in cui viene accettato un token di accesso personale (PAT). Altre informazioni sui nostri sforzi per ridurre l'utilizzo di PAT in Azure DevOps ed esplorare la sostituzione di token PAT con i token Microsoft Entra.