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.
servizi Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Un token di accesso personale (PAT) è una password alternativa per l'autenticazione Azure DevOps. Un token di accesso personale (PAT) ti identifica e determina le risorse e le operazioni a tua disposizione. Tratta un PAT con la stessa cura di una password.
Attenzione
Evitare le connessioni CONT quando è disponibile un metodo di autenticazione più sicuro. Per le applicazioni e l'automazione, usare token di Microsoft Entra, identità gestite o entità servizio quando possibile.
Se uno strumento non supporta l'autenticazione Microsoft Entra, usa un PAT con ambito a livello di organizzazione con gli ambiti minimi e la durata più breve possibile in pratica.
Importante
Azure DevOps sta ritirando i PAT globali. Tutti i PT globali esistenti smettono di lavorare il 1° dicembre 2026. Eseguine ora la migrazione a PAT con ambito di organizzazione o all'autenticazione Microsoft Entra. Per altre informazioni, vedere Ritiro dei token di accesso personali globali in Azure DevOps.
Prerequisiti
- Accesso a un'organizzazione Azure DevOps o a una raccolta di Azure DevOps Server.
- Autorizzazioni necessarie per le risorse e le operazioni a cui accede il pat. Un PAT non può conferire più autorizzazioni di quelle di cui dispone il proprietario.
- Autorizzazione a creare PAT in base ai criteri della propria organizzazione. Un amministratore può limitare la creazione, gli ambiti e la durata del pat. Per altre informazioni, vedi Gestire i PAT tramite criteri.
Creare un PAT
Accedi alla tua organizzazione (
https://dev.azure.com/{organization}).Nella home page aprire le impostazioni
utente e selezionare Token di accesso personali.
Selezionare + Nuovo token.
Immettere un nome, selezionare un'organizzazione e impostare una data di scadenza.
Selezionare solo gli ambiti necessari per le attività desiderate.
Ad esempio, per registrare un agente ospitato autonomamente, selezionare Pool di agenti (Leggi e gestisci). L'amministratore potrebbe limitare i PAT con ambito completo o richiedere una voce nell'elenco di elementi consentiti per ambiti specifici.
Selezionare Crea, copiare il token e archiviarlo in una posizione sicura. Il valore del token non viene visualizzato di nuovo.
Annotazioni
Gli screenshot seguenti mostrano Azure DevOps Servizi. L'interfaccia Azure DevOps Server potrebbe differire leggermente.
Accedere al portale Web di Azure DevOps Server (
https://{server}/{collection}ohttp://{server}:{port}/tfs/{collection}).Nella home page aprire le impostazioni
utente e selezionare Token di accesso personali.
Selezionare + Nuovo token.
Immettere un nome, selezionare la raccolta e impostare una data di scadenza.
Selezionare solo gli ambiti necessari per le attività desiderate.
Ad esempio, per registrare un agente ospitato autonomamente, selezionare Pool di agenti (lettura e gestione).
Selezionare Crea, copiare il token e archiviarlo in una posizione sicura. Il valore del token non viene visualizzato di nuovo.
Per le organizzazioni che usano Microsoft Entra ID, accedi con un nuovo PAT entro 90 giorni, altrimenti il PAT diventa inattivo. Per altre informazioni, vedere Frequenza di accesso utente per Accesso Condizionale.
Notifiche
Azure DevOps invia una notifica quando si crea un pat e un'altra notifica prima della scadenza.
Se i criteri di un'organizzazione non consentono più di rigenerare un token di accesso personale, il messaggio di posta elettronica di scadenza identifica la restrizione. Se hai bisogno di una voce nell'elenco di elementi consentiti, contatta l'amministratore della raccolta di progetti.
Per informazioni sulla configurazione della posta elettronica, vedere Configurare un server SMTP e personalizzare la posta elettronica per avvisi e richieste di feedback.
Notifica imprevista
Una notifica inaspettata potrebbe significare che un amministratore o uno strumento ha creato un PAT per te. I nomi dei token comuni includono:
-
git: https://dev.azure.com/{organization} on {machine}, creato quando Git si connette a un repository Azure Repos. -
Service Hooks: Servizio app di Azure: Deploy web app, creato quando viene configurata una distribuzione Servizio app di Azure. -
Microsoft Teams Integration, creato quando viene configurata un'integrazione Microsoft Teams.
Se non riconosci un PAT, revocalo e cambia la password. Per un account Microsoft Entra, chiedere all'amministratore di esaminare le attività di accesso non note.
Usare un PAT
Usare un pat per richieste monouso, prototipi locali o strumenti che non supportano l'autenticazione Microsoft Entra. Non usare i PAT come credenziali a lungo termine per le applicazioni o i servizi in produzione.
Azure DevOps accetta un PAT tramite un'intestazione HTTP di autenticazione Basic. Il nome utente può essere vuoto. Codifica in Base64 la stringa :{PAT}, e usa il valore risultante in questa intestazione:
Authorization: Basic BASE64_ENCODED_PAT
Gli esempi seguenti prevedono che la AZURE_DEVOPS_PAT variabile di ambiente venga popolata da un'origine privata sicura.
$patBytes = [Text.Encoding]::ASCII.GetBytes(":$env:AZURE_DEVOPS_PAT")
$headers = @{ Authorization = "Basic $([Convert]::ToBase64String($patBytes))" }
Invoke-RestMethod `
-Uri "https://dev.azure.com/{organization}/{project}/_apis/build/builds?api-version=7.1" `
-Headers $headers
Una volta che un prototipo funziona, eseguirne la migrazione a Microsoft Entra OAuth per l'accesso utente delegato o a un'entità servizio o un'identità gestita per l'accesso dell'applicazione.
Modificare un PAT (token di accesso personale)
È possibile modificare il nome, la scadenza o gli ambiti di un pat. La rigenerazione di un pat crea un nuovo valore di token e invalida il valore precedente. Non è possibile modificare o rigenerare un pat scaduto o revocato; crearne uno nuovo.
Nella home page aprire le impostazioni
utente e selezionare Token di accesso personali.Selezionare il PAT e quindi Modifica.
Modificare il nome del token, la scadenza o gli ambiti e quindi selezionare Salva.
Revocare un token di accesso personale
Revoca un PAT quando è compromesso, non è più necessario o concede più accesso del necessario.
Nella home page aprire le impostazioni
utente e selezionare Token di accesso personali.Selezionare il PAT, quindi selezionare Revoca.
Nella finestra di dialogo di conferma selezionare Revoca.
Sostituire un PAT scaduto o revocato
Dopo la scadenza o la revoca di un pat, Azure DevOps rifiuta i successivi tentativi di autenticazione che lo usano. Una pipeline, uno script, un client di pacchetti o un'operazione Git in genere non riesce la volta successiva che tenta di autenticarsi. Azure DevOps non garantisce che la revoca termini ogni connessione già stabilita.
Ruota un PAT prima che scada
Per sostituire un PAT senza causare un'interruzione del servizio evitabile:
Crea un token di accesso personale (PAT) con ambito organizzazione, con solo gli ambiti necessari e una durata breve.
Memorizza il nuovo valore nel tuo archivio dei segreti. Non incorporare i PAT negli URL remote di Git,
.git/config, nel codice sorgente, nei file YAML della pipeline o nei log.Testa il nuovo PAT con un'operazione in ambiente non di produzione o un'integrazione prima di aggiornare tutte le dipendenze.
Aggiornare ogni servizio o strumento in cui è archiviato il pat precedente:
Integration Dove aggiornare le credenziali Git Gestione credenziali Git o un altro gestore di credenziali sicure Azure Pipelines Una variabile segreta, un gruppo di variabili o una connessione al servizio Azure Artifacts Configurazione sicura del provider di credenziali Azure Artifacts o della gestione pacchetti Script e client REST Un archivio segreto o una variabile di ambiente protetta Strumenti di terzi Archivio delle credenziali sicure dello strumento Testare ogni integrazione aggiornata. Eseguire la pipeline interessata, l'operazione Git, l'operazione del pacchetto, lo script o la richiesta API e verificare la presenza di errori di autenticazione.
Revoca il vecchio PAT.
Mantieni un inventario del proprietario, dello scopo, delle autorizzazioni, della scadenza e delle integrazioni che ne dipendono di ogni PAT. Sostituire i PAT prima della scadenza in base ai criteri stabiliti dall'organizzazione e al livello di rischio dello scenario.
Ripristina dopo la scadenza o la revoca
Se un pat smette di funzionare in modo imprevisto:
- Nella pagina Token di accesso personali, controlla lo stato e la data di scadenza del PAT.
- Crea un PAT sostitutivo con solo le autorizzazioni richieste dalle integrazioni interessate.
- Aggiorna le integrazioni che hanno memorizzato il PAT non più disponibile.
- Testare ogni integrazione e monitorare la successiva operazione pianificata per individuare gli errori di autenticazione.
Se il motivo dell'errore non è chiaro, esaminare gli eventi di controllo pat per determinare se il pat è scaduto, è stato aggiornato o è stato revocato.
Gestire i PAT con le API di gestione del ciclo di vita
Usa le API per la gestione del ciclo di vita dei PAT per elencare, creare, aggiornare e revocare i tuoi PAT tramite codice.
Queste API richiedono un token di accesso Microsoft Entra da un flusso delegato dall'utente. Usa l'ambito vso.pats. Le entità servizio e le identità gestite non possono creare o gestire PAT perché non rappresentano un utente.
| Operation | Richiesta |
|---|---|
| Elencare le reti PAT | GET https://vssps.dev.azure.com/{organization}/_apis/tokens/pats?api-version=7.1 |
| Creare un PAT | POST https://vssps.dev.azure.com/{organization}/_apis/tokens/pats?api-version=7.1 |
| Revocare un token di accesso personale | DELETE https://vssps.dev.azure.com/{organization}/_apis/tokens/pats?authorizationId={authorizationId}&api-version=7.1 |
Inviare il token Microsoft Entra come token di connessione. Una richiesta di creazione utilizza il seguente formato per il corpo della richiesta:
{
"displayName": "CI build access",
"scope": "vso.build",
"validTo": "{expiration-in-UTC}",
"allOrgs": false
}
La risposta di elenco restituisce i token nella patTokens matrice. La risposta a una richiesta di creazione restituisce il segreto una sola volta in patToken.token. Archiviare tale valore in modo sicuro e non scriverlo mai nei log. Per revocare il vecchio token, passa il relativo authorizationId come parametro di query indicato nella tabella.
Per gli schemi e gli esempi completi, vedere Elencare le patte, creare un token di accesso personale e revocare un token di accesso personale.
Esaminare gli eventi di controllo PAT
Azure DevOps Services registra gli eventi del ciclo di vita pat nel log di controllo dell'organizzazione. In Impostazioni organizzazione selezionare Controllo e quindi filtrare le azioni seguenti:
| Action | Event |
|---|---|
| Viene creato un PAT | Token.PatCreateEvent |
| Un PAT scade | Token.PatExpiredEvent |
| Un PAT viene trovato in un repository pubblico | Token.PatPublicDiscoveryEvent |
| Un utente revoca un PAT | Token.PatRevokeEvent |
| Azure DevOps revoca un PAT | Token.PatSystemRevokeEvent |
| Un PAT viene modificato o rigenerato | Token.PatUpdateEvent |
Gli eventi di accesso ai token non sono attualmente registrati. Usa il registro di controllo per esaminare le modifiche del ciclo di vita, non per determinare quando o se un PAT è stato usato.
Conservazione dei log di controllo
Gli eventi di controllo vengono conservati per 90 giorni e quindi eliminati. Il periodo di conservazione non è configurabile. Per conservare gli eventi più a lungo, esportarli in CSV o JSON o configurare un flusso di controllo in un sistema SIEM (Security Information and Event Management) esterno.
Per altre informazioni, vedere Accedere, esportare e filtrare i log di controllo eAzure DevOps eventi di controllo.
Configurare i criteri PAT
Gli amministratori del tenant possono limitare i PAT globali e i PAT con ambito completo, impostare una durata massima dei PAT e controllare la revoca automatica dei PAT compromessi. Configura i criteri PAT a livello di tenant in Impostazioni dell'organizzazione>Microsoft Entra.
I proprietari dell'organizzazione possono limitare la creazione di PAT per una specifica organizzazione in Impostazioni dell'organizzazione>Criteri. Per informazioni su ruoli, comportamento dei criteri e procedure di inserimento nell'elenco di elementi consentiti, vedere Gestire i PAT con i criteri.
Formato PAT
Le stringhe PAT seguono un formato riconoscibile che migliora il rilevamento dei segreti e riduce i falsi positivi.
- I PAT sono lunghi 84 caratteri, di cui 52 generati casualmente.
- I PAT di Azure DevOps contengono la firma fissa
AZDOnelle posizioni comprese tra 76 e 80.
Se l'integrazione convalida i PT, supportare il formato di 84 caratteri. Per i controlli relativi ai token compromessi, vedere Revocare automaticamente i PAT compromessi.
Migliori pratiche per l'utilizzo dei PAT
Prendere in considerazione le alternative
- Usare Microsoft Entra token per applicazioni e automazione.
- Per i comandi monouso, acquisire un token Microsoft Entra tramite il interfaccia della riga di comando di Azure.
- Per Git, usare Git Credential Manager. Per Azure Artifacts, usare il provider di credenziali Azure Artifacts.
Creare i token di accesso personali
- Crea solo PAT con ambito di organizzazione. Le RETI PAT globali smettono di lavorare il 1° dicembre 2026.
- Usare un token di accesso personale diverso per ogni strumento o flusso di lavoro.
- Selezionare solo gli ambiti necessari per l'attività.
- Mantenere la durata il più breve possibile.
- Non includere dati personali o parti del valore del token nel nome visualizzato.
Gestire i Token di Accesso Personale
- Non condividere i PAT.
- Archiviare i token DI accesso in un archivio segreto sicuro, ad esempio Azure Key Vault.
- Sostituire i PT prima della scadenza e revocarli quando non sono più necessari.
- Revoca immediatamente un PAT se è stato divulgato o compromesso.
Per gli amministratori
- Limitare le PT con ambito completo e impostare una durata massima in base ai requisiti di sicurezza.
- Limitare la creazione di pat nelle organizzazioni che non lo richiedono.
- Usare le API di amministrazione dei token supportate per revocare i PAT utente.
- Preferisci l'autenticazione Microsoft Entra per servizi e automazione.
Esaminare e rispondere ai PAT a rischio
Come parte della verifica della sicurezza:
- Identificare i PAT con autorizzazioni complete, lunga durata, accesso globale o senza proprietario e finalità documentati.
- Esamina gli eventi di creazione, aggiornamento, rilevamento pubblico, scadenza e revoca dei PAT nel log di audit. Poiché l'accesso al token non viene registrato, non utilizzare il log di audit per classificare un PAT come attivo o obsoleto.
- Revocare i PAT esposti, compromessi o non necessari. Per l'offboarding, usare le API di amministrazione dei token supportate per revocare le API PAT dell'utente e notificare ai proprietari delle integrazioni interessate.
- Configurare i criteri per i PAT del tenant e dell'organizzazione per limitare i PAT globali e con ambito completo, impostare la durata massima e controllare la revoca automatica dei PAT esposti.
- Esportare gli eventi di controllo o configurare un flusso di controllo quando i requisiti di conservazione superano i 90 giorni.
Domande frequenti
Perché non è possibile modificare o rigenerare un PAT con ambito limitato a un'organizzazione?
Accedi all'organizzazione a cui è associato il PAT. È possibile visualizzare un elenco dei propri PAT di qualsiasi organizzazione nello stesso tenant di Microsoft Entra modificando il filtro Ambito di accesso, ma è possibile modificare un PAT con ambito a livello di organizzazione solo da quell'organizzazione.
Cosa accade ai PTS quando un account utente è disabilitato?
Quando un account viene disabilitato o rimosso da un'organizzazione, le relative reti AP non possono più accedere alle risorse dell'organizzazione. Azure DevOps non elimina automaticamente i PAT. Se l'accesso viene ripristinato, un pat non scaduto o revocato funziona con le autorizzazioni correnti dell'utente.
Posso usare i PAT con tutte le API REST di Azure DevOps?
No I token di accesso personale (PAT) funzionano con la maggior parte delle API REST di Azure DevOps. Alcune API, tra cui organizzazioni, profili e API di gestione del ciclo di vita PAT, richiedono token Microsoft Entra.
Cosa succede se si esegue il commit di un PAT in un repository pubblico su GitHub?
Azure DevOps analizza i repository di GitHub pubblici per individuare i PT persi. Quando rileva un token, Azure DevOps notifica al proprietario e registra un evento di controllo. A meno che il criterio del tenant non disabiliti la revoca automatica, Azure DevOps revoca il PAT esposto. Per altre informazioni, vedere Revocare automaticamente i PAT trapelati.
È possibile usare un token di accesso personale come chiave API per pubblicare pacchetti NuGet?
No Azure Artifacts non supporta il passaggio di un token di accesso personale come chiave API. In un ambiente di sviluppo locale installare il provider di credenziali Azure Artifacts. In Azure Pipelines, usare l'attività di autenticazione NuGet.
Per esempi, vedere Pubblicare con dotnet, Pubblicare con NuGet.exee Pubblicare pacchetti NuGet con Azure Pipelines.
Perché il mio PAT smetteva di funzionare?
Verifica se il PAT è scaduto, è stato revocato, è diventato inattivo, non dispone di ambiti sufficienti o appartiene a un utente le cui autorizzazioni sono state modificate. Per un'organizzazione supportata da Microsoft Entra ID, accedere a Azure DevOps e completare la richiesta di autenticazione completa e quindi riprovare. La configurazione dell'accesso condizionale potrebbe richiedere un accesso più frequente.
Per Azure DevOps Server, l'autenticazione di base di IIS impedisce l'autenticazione PAT. Mantenere disabilitata l'autenticazione di base di IIS.
Come si crea un token di accesso non associato a un utente?
I PT sono sempre associati all'utente che li ha creati. Per un'identità non utente, usare un token Microsoft Entra rilasciato a un'entità servizio dell'applicazione o a un'identità gestita. Per le pipeline, usare una connessione al servizio.
Come si rigenera un PAT tramite l'API?
Le API di gestione del ciclo di vita non rigenerano un token di accesso personale in un'unica operazione. Elencare il token di accesso personale precedente per ottenere i metadati, creare un nuovo pat con l'ambito e la scadenza necessari, aggiornare e testare ogni integrazione dipendente e quindi revocare il token di accesso personale precedente usando il relativo authorizationId. Per i percorsi corretti, vedere Gestire i PAT con le API di gestione del ciclo di vita.
Perché viene visualizzato un messaggio di approvazione dell'amministratore quando si chiamano le API di gestione del ciclo di vita PAT?
I criteri di sicurezza del tenant richiedono il consenso dell'amministratore prima che l'applicazione Microsoft Entra possa accedere alle risorse dell'organizzazione. Contattare l'amministratore del locatario.