Condividi tramite


Sicurezza avanzata ed efficienza del flusso di lavoro

Questo sprint offre vari miglioramenti incentrati sull'aumento della sicurezza e sulla semplificazione dell'efficienza del flusso di lavoro. Tra questi miglioramenti, l'esperienza di creazione della connessione al servizio in Azure Pipelines. In questo modo, i team possono configurare le connessioni al servizio usando le identità gestite esistenti con la federazione delle identità del carico di lavoro. Semplifica inoltre la configurazione e riduce il rischio di identità con privilegi elevati.

Inoltre, siamo lieti di annunciare che in Azure Repos, i file markdown con sintassi mermaid verranno ora visualizzati come diagrammi nelle anteprime dei file e nelle richieste pull, fornendo oggetti visivi più chiari per la documentazione.

Infine, in GitHub Advanced Security, le annotazioni delle richieste pull recapitano ora notifiche in linea per l'analisi delle dipendenze e del codice, semplificando il processo per i team per rilevare e risolvere potenziali problemi durante le revisioni del codice.

Per informazioni dettagliate, vedere le note sulla versione.

Generali

GitHub Advanced Security per Azure DevOps

Azure Boards:

Azure Repos

Azure Pipelines

Azure Artifacts

Wiki

Generali

Copiare il blocco di codice negli Appunti

In risposta ai commenti e suggerimenti della community degli sviluppatori, è stato introdotto un pulsante "Copia negli Appunti" per tutti i blocchi di codice nel markdown sottoposto a rendering. Questo miglioramento è disponibile tra le pagine wiki, le anteprime dei file markdown in Repos, le discussioni e le descrizioni delle richieste pull e le discussioni degli elementi di lavoro.

Screenshot della copia negli Appunti.

Informazioni sul profilo Microsoft Entra (anteprima)

Microsoft è lieta di introdurre l'integrazione delle informazioni sul profilo di Microsoft Entra in Azure DevOps, eliminando la necessità di aggiornamenti del profilo separati. Per provare l'anteprima, abilitare le informazioni sul profilo Microsoft Entra in Funzionalità di anteprima.

Screenshot dell'attivazione delle informazioni sul profilo di Microsoft Entra.

Una volta abilitate, le impostazioni del profilo vengono di sola lettura e popolate automaticamente da Microsoft Entra. Per ripristinare le impostazioni precedenti o fornire commenti, disattivare l'anteprima e condividere i commenti.

GitHub Advanced Security per Azure DevOps

Annotazioni delle richieste pull per l'analisi delle dipendenze e del codice

Come parte della roadmap per la sicurezza avanzata, le annotazioni delle richieste pull sono ora disponibili. Si riceveranno annotazioni in linea su tutte le richieste pull che usano una pipeline associata ai criteri di convalida della compilazione, che includono le attività di analisi delle dipendenze e/o del codice.

Non è necessario alcun consenso esplicito aggiuntivo oltre alla creazione di un criterio di convalida della compilazione per i rami pertinenti.

Facendo clic sull'annotazione Show more details viene visualizzata la visualizzazione dettagli avviso per l'avviso in questione.

Screenshot di Fare clic su Mostra altri dettagli.

Per altre informazioni, vedere il post di blog più recente qui

Nuova strategia di rilevamento pip per l'analisi delle dipendenze

L'analisi delle dipendenze usa ora una nuova strategia di rilevamento per Python: PipReport, in base alla funzionalità del report di installazione pip. Questo aggiornamento migliora l'accuratezza rispettando gli identificatori di ambiente per determinare le versioni esatte recuperate da un'esecuzione reale pip install . Per impostazione predefinita, il rilevatore usa pypi.org per compilare il grafico delle dipendenze. Facoltativamente, è possibile impostare una variabile di ambiente della pipeline per PIP_INDEX_URL costruire invece il grafico delle dipendenze. Se si verificano problemi di autenticazione durante l'accesso al feed, potrebbe essere necessaria la configurazione dell'attività PipAuthenticate@1 della pipeline in modo che sia possibile accedere al feed.

Per altre informazioni sulla strategia di rilevamento, vedere la documentazione sul rilevamento pip.

Azure Boards

Gestione avanzata dei tag nel modulo dell'elemento di lavoro

La gestione dei tag in Azure Boards è stata migliorata per offrire un'esperienza più semplificata. I tag eliminati non vengono più visualizzati nell'elenco suggerito nei moduli degli elementi di lavoro, assicurandosi che vengano visualizzati solo i tag attivi.

Miglioramento del supporto delle immagini nei commenti degli elementi di lavoro

È stato migliorato il supporto per incollare le immagini nei commenti degli elementi di lavoro. È ora possibile incollare immagini direttamente da origini come Microsoft Teams, messaggi di posta elettronica e documenti di Word nella sezione discussione di un elemento di lavoro

Informazioni dettagliate sulle richieste pull di GitHub

È stata migliorata l'integrazione tra le richieste pull di GitHub e Azure Boards. Oltre a visualizzare gli stati aperti e chiusi, è ora possibile vedere se una richiesta pull è in modalità bozza, richiede revisione e controlla lo stato. Tutto senza dover aprire la richiesta pull.

Gif per demo di Informazioni dettagliate sulle richieste pull di GitHub avanzate.

Per abilitare questa funzionalità, assicurarsi di passare all'app Boards in GitHub per accettare le autorizzazioni aggiornate richieste per l'accesso in lettura e scrittura a Controlli.

SScreenshot delle autorizzazioni aggiornate.

Azure Repos

Configurare i rami di destinazione per le richieste pull

La gestione di più rami in un repository può risultare complessa, soprattutto quando si creano nuove richieste pull. Con la nuova funzionalità Configura rami di destinazione per le richieste pull, è ora possibile specificare un elenco di rami di destinazione preferiti, assicurandosi che i suggerimenti delle richieste pull siano più accurati e pertinenti. In questo modo è possibile semplificare il flusso di lavoro e ridurre le probabilità di indirizzare il ramo errato. Per usare questa funzionalità, creare un .azuredevops/pull_request_targets.yml file nel ramo predefinito del repository. Questo file YAML deve contenere un elenco denominato pull_request_targets con i nomi dei rami o i prefissi corrispondenti ai rami candidati. Ad esempio:

pull_request_targets:
  - main
  - release/*
  - feature/*

In questa configurazione, il ramo principale è prioritario, ma i rami che iniziano con release/ o feature/ verranno considerati anche quando appropriato. La configurazione viene applicata negli scenari seguenti:

  • Suggerimenti per le richieste pull: dopo il push di un ramo in Azure DevOps, la pagina Repos può suggerire di creare una richiesta pull da tale ramo, scegliendo dinamicamente il ramo di destinazione.
  • URL richiesta pull: quando si passa direttamente alla pagina di creazione della richiesta pull usando un parametro sourceRef ma omettendo il parametro targetRef, Azure DevOps seleziona un ramo di destinazione in base a questa scelta dinamica.

È consigliabile includere solo rami protetti dai criteri di richiesta pull per garantire la coerenza nella cronologia padre del commit della mancia.

Supportare diagrammi mermaid nell'anteprima del file markdown

I file Markdown contenenti la sintassi mermaid verranno ora visualizzati come diagrammi all'interno delle anteprime dei file nel browser dei file di repository e nelle richieste pull. Ciò consente di aggiungere documentazione più completa ai repository.

Screenshot dei diagrammi mermaid nell'anteprima del file markdown.

Azure Pipelines

Ubuntu 24.04 in agenti ospitati in Azure Pipelines

L'immagine Ubuntu 24.04 è ora disponibile per gli agenti ospitati in Azure Pipelines. Per usare questa immagine, aggiornare il file YAML in modo da includere vmImage:'ubuntu-24.04':

- job: ubuntu2404
  pool:
    vmImage: 'ubuntu-24.04'
  steps:
  - bash: |
      echo Hello from Ubuntu 24.04
      lsb_release -d

Nota

L'etichetta ubuntu-latest dell'immagine continuerà a puntare a ubuntu-22.04 fino a quest'anno.

Vedere il file leggimi dell'immagine Ubuntu 24.04 per il software installato.

Usare la federazione dell'identità del carico di lavoro nei test di integrazione di Azure

A giugno, le librerie di identità di Azure for.NET, C++, Go, Java, JavaScript e Python hanno aggiunto il supporto per la federazione delle identità del carico di lavoro. In questo modo è stata aggiunta la possibilità di eseguire il codice dal AzureCLI@2 e AzurePowerShell@5 attività per l'autenticazione con Microsoft Entra (ad esempio, per accedere ad Azure) con la AzurePipelinesCredential classe .

Molti clienti usano le librerie di Identità di Azure nei test di integrazione richiamati da altre attività. È stato ora aggiunto il supporto per AzurePipelinesCredential alle attività di DotNetCoreCLI@2, Maven@4 e VSTest@3 .

È possibile impostare la connectedService proprietà su una connessione al servizio di Azure configurata con la federazione dell'identità del carico di lavoro. L'oggetto AzurePipelinesCredential deve SYSTEM_ACCESSTOKEN essere impostato.

- task: DotNetCoreCLI@2
  inputs:
    command: 'run'
    connectedService: <Azure service connection configured with workload identity federation>
  env:
    SYSTEM_ACCESSTOKEN: $(System.AccessToken)

Per altre informazioni su AzurePipelinesCredential, vedere questo post di blog.

Nuova esperienza di creazione della connessione al servizio di Azure con il supporto migliorato dell'identità gestita

La nuova esperienza di creazione della connessione al servizio di Azure offre maggiore flessibilità e impostazioni predefinite sicure. Inoltre, allinea la terminologia con Microsoft Entra ID, in modo che gli utenti che creano manualmente oggetti ID Microsoft Entra abbiano una migliore comprensione quando si esplorano portali diversi.

Quando si crea una nuova connessione al servizio Azure Resource Manager, le varie opzioni per configurare l'identità sono ora disponibili in un'unica finestra di dialogo unificata che sostituisce gli elementi di primo livello distinti usati in precedenza:

Screenshot delle opzioni di primo livello di connessione al servizio di Azure.

Il tipo di identità elenca tutti gli schemi di autenticazione supportati dalla connessione al servizio di Azure:

Screenshot del tipo di identità.

Per le registrazioni delle app, è possibile selezionare in modo indipendente credenziali come federazione dell'identità del carico di lavoro o segreto.

Supporto dell'identità gestita della connessione al servizio di Azure

È ora possibile selezionare un'identità gestita preesistente e usarla per configurare una connessione al servizio che usa la federazione dell'identità del carico di lavoro. Creare prima di tutto un'identità gestita assegnata dall'utente.

Creare quindi una connessione al servizio di Azure e selezionare Il tipo di identità gestita. In questo modo vengono configurate le credenziali dell'identità federata nell'identità gestita.

Screenshot del supporto dell'identità gestita.

L'opzione per usare un'identità gestita assegnata a un agente (pool) è stata rinominata Identità gestita (assegnata dall'agente). Per impedire la condivisione di identità gestite con privilegi elevati, è consigliabile usare un'identità gestita con la federazione delle identità del carico di lavoro anziché le identità gestite assegnate ai pool di agenti.

L'identità gestita è anche l'opzione consigliata per gli utenti che non possono creare una registrazione dell'app se disabilitata in Microsoft Entra ID.

Per usare un'identità gestita con la federazione dell'identità del carico di lavoro, selezionare prima di tutto la sottoscrizione e il gruppo di risorse che contiene l'identità gestita. Questo può essere diverso dalla sottoscrizione a cui accede la connessione al servizio nei processi della pipeline. Selezionare l'identità gestita configurata per la federazione dell'identità del carico di lavoro. L'utente deve avere il ruolo Collaboratore identità gestita o autorizzazioni equivalenti per l'identità gestita per creare credenziali di identità federate.

Continuare a selezionare la sottoscrizione che verrà usata come ambito di distribuzione per la connessione al servizio.

Screenshot della selezione dell'identità gestita.

Campo Informazioni di riferimento sulla gestione dei servizi

Alcune organizzazioni richiedono che il riferimento di gestione dei servizi di una registrazione dell'app venga popolato con informazioni di contesto pertinenti da un database ITSM. Se necessario, gli utenti possono specificare questo riferimento al momento della creazione della connessione al servizio.

Ulteriori informazioni

La nuova esperienza di creazione della connessione al servizio di Azure verrà implementata nel mese successivo. Per altre informazioni, vedi:

Eseguire fasi figlio quando la fase padre ha esito negativo

È stato semplificato continuare le distribuzioni con Azure Pipelines. Ciò è utile, ad esempio, quando si usano pipeline per distribuire nuove versioni dell'applicazione in più aree di Azure.

Si supponga di dover eseguire la distribuzione in cinque aree di Azure consecutive. Si supponga che la pipeline abbia una fase per ogni area e ogni fase abbia un processo che esegue un'attività AzureResourceManagerTemplateDeployment e quindi registra alcuni dati di telemetria. Quest'ultimo è bello avere, ma non critico. Si supponga che si verifichi un problema durante la registrazione dei dati di telemetria. A questo punto, la fase ha esito negativo e la distribuzione si arresta.

A partire da questo sprint, quando una fase ha esito negativo, è possibile riprendere l'esecuzione delle fasi figlio.

Screenshot delle fasi figlio in esecuzione se la fase padre ha esito negativo.

Azure Artifacts

Autenticazione in Azure Artifacts usando un feed pubblico e Cargo

A causa di una limitazione con il client Cargo, l'autenticazione era tutto o niente. Per i feed privati, l'autenticazione verrebbe inviata, ma per i feed pubblici, che devono consentire gli utenti anonimi, non verrebbe inviata alcuna autenticazione, anche se fosse disponibile o necessaria.

Ora, gli utenti autenticati possono connettersi a un feed pubblico di Azure Artifacts, proprio come un feed privato. Se l'utente o l'agente della pipeline hanno l'autorizzazione per salvare i pacchetti da origini upstream, è possibile accedere ai pacchetti da crates.io tramite il feed. Questa modifica consente di controllare quali pacchetti possono entrare in un feed nelle mani degli amministratori del feed. Una volta che i pacchetti vengono inseriti nel feed da un'origine upstream, gli utenti anonimi potranno accedervi.

Per garantire l'autenticazione, aggiungere ~force-auth al nome del feed nell'URL del Registro di sistema. Per altre informazioni , vedere la documentazione pubblica.

Wiki

Migliorare il incollamento del contenuto basato su HTML in Wiki

Abbiamo reso più semplice incollare contenuti basati su HTML in Wiki. Ora, gli elementi HTML come collegamenti, elenchi, tabelle, immagini, fogli di Excel, messaggi di Microsoft Teams, messaggi di posta elettronica e query di Azure Esplora dati vengono convertiti automaticamente nella sintassi Markdown per la modifica più fluida.

Passaggi successivi

Nota

Queste funzionalità verranno implementate nelle prossime due o tre settimane.

Passare ad Azure DevOps e dare un'occhiata.

Come fornire commenti e suggerimenti

Ci piacerebbe sentire ciò che pensi a queste funzionalità. Usare il menu ? per segnalare un problema o fornire un suggerimento.

Inviare un suggerimento

È anche possibile ottenere consigli e risposte alle domande della community su Stack Overflow.

Grazie,

Dan Hellem