Usare i file protetti

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

Questo articolo descrive i file sicuri e come usarli in Azure Pipelines. I file sicuri sono un modo per archiviare i file che è possibile usare nelle pipeline senza doverli eseguire il commit nel repository.

È possibile usare la libreria di file protetti per archiviare file come:

  • Firma dei certificati.
  • Profili di provisioning Apple.
  • File dell'archivio chiavi Android.
  • Chiavi SSH.

Il limite di dimensioni per ogni file protetto è di 10 MB.

I file sicuri vengono archiviati nel server in formato crittografato e possono essere utilizzati solo da un'attività della pipeline. I file protetti sono una risorsa protetta. È possibile usare le approvazioni, i controlli e le autorizzazioni della pipeline per limitare l'accesso ai file. I file protetti usano anche ruoli del modello di sicurezza della libreria.

Prerequisiti

  • Un progetto Azure DevOps in cui si dispone delle autorizzazioni per creare pipeline e aggiungere elementi di libreria.
  • Un certificato, un archivio chiavi o un file di provisioning che si vuole usare in modo sicuro nella pipeline.

Aggiungere un file sicuro

  1. Nel progetto Azure DevOps passare a Libreria pipeline>e selezionare la scheda File protetti.

    Screenshot della selezione della scheda File sicuri.

  2. Per caricare un file sicuro, selezionare + Secure file (+ Secure file), quindi cercare di caricare o trascinare il file.

    Screenshot del caricamento del file.

  3. Seleziona OK. Dopo aver caricato il file, è possibile eliminarlo ma non sostituirlo.

Definire ruoli e autorizzazioni di sicurezza

È possibile definire restrizioni e autorizzazioni dei ruoli di sicurezza per tutti gli elementi di una raccolta o per singoli elementi.

  • Per assegnare ruoli di sicurezza per tutti gli elementi di una raccolta, selezionare Sicurezza nella pagina Raccolta .

  • Per definire le autorizzazioni per un singolo file:

    1. Selezionare il file dall'elenco File protetti .
    2. Nella parte superiore della pagina Secure file (Secure file) selezionare:
      • Sicurezza per impostare utenti e ruoli di sicurezza che possono accedere al file.
      • Autorizzazioni della pipeline per selezionare le pipeline YAML che possono accedere al file.
      • Approvazioni e controlli per impostare responsabili approvazione e altri controlli per l'uso del file. Per altre informazioni, vedere Approvazioni e controlli.

    Impostare la sicurezza della pipeline per i file protetti.

Autorizzare una pipeline YAML a usare un file sicuro

Per usare un file sicuro nelle pipeline YAML, è necessario autorizzare la pipeline a usare il file. Tutte le pipeline classiche possono accedere a file protetti.

Per autorizzare una pipeline o tutte le pipeline a usare un file sicuro:

  1. Nella parte superiore della pagina per il file protetto selezionare Autorizzazioni pipeline.
  2. Nella schermata Autorizzazioni pipeline selezionare +e quindi selezionare una pipeline di progetto da autorizzare. In alternativa, per autorizzare tutte le pipeline a usare il file, selezionare l'icona Altre azioni, selezionare Apri accesso e selezionare di nuovo Apri accesso per confermare.

Usare un file sicuro in una pipeline

Per utilizzare file protetti in una pipeline, usare l'attività Scarica file protetti . L'agente della pipeline deve eseguire la versione 2.182.1 o successiva. Per altre informazioni, vedere Versione e aggiornamenti dell'agente.

La pipeline YAML di esempio seguente scarica un file di certificato sicuro e lo installa in un ambiente Linux.

- task: DownloadSecureFile@1
  name: caCertificate
  displayName: 'Download CA certificate'
  inputs:
    secureFile: 'myCACertificate.pem'

- script: |
    echo Installing $(caCertificate.secureFilePath) to the trusted CA directory...
    sudo chown root:root $(caCertificate.secureFilePath)
    sudo chmod a+r $(caCertificate.secureFilePath)
    sudo ln -s -t /etc/ssl/certs/ $(caCertificate.secureFilePath)

Nota

Se viene visualizzato un Invalid Resource errore durante il download di un file sicuro con Azure DevOps Server locale, assicurarsi che l'autenticazione di base di IIS sia disabilitata nel server.