Parte 4: Impostazione di una catena di strumenti CC

Questa esercitazione spiega come utilizzare il modello di toolchain per la conformità continua (CC), per assicurarsi che gli artefatti distribuiti e i relativi repository di origine siano sempre conformi.

Prima di iniziare

Assicuratevi che i seguenti prerequisiti siano stati completati. È possibile riutilizzare le risorse create durante il processo di configurazione della catena di strumenti CI e di distribuzione continua (CD). Aiuta a mantenere le informazioni sulle risorse dalle toolchain CI e CD a portata di mano.

  1. Completate Impostazione dei prerequisiti.
  2. Completare Impostazione di una catena di strumenti CI.
  3. Completare Impostazione di una catena di strumenti CD.
  4. Fare riferimento alle pratiche della catena di strumenti CC.

Avviare la catena di strumenti CC

Questa esercitazione utilizza un ambiente di staging come esempio per configurare e mostrare la catena di strumenti CC. Seguire la procedura per accedere al modello della catena di strumenti CC.

  1. Nella console 'IBM Cloud, fare clic su 'Menu 'Icona del menu > 'Automazione della piattaforma > 'Catene portautensili.
  2. Dalla pagina Catene di strumenti, fare clic su Crea catena di strumenti.
  3. Nella pagina Crea una catena di strumenti, fare clic sul riquadro CC - Mantieni la tua applicazione costantemente conforme alle pratiche DevSecOps.

Configurare le impostazioni della catena di strumenti CC

  1. Fai clic su Start.

  2. Immettere un nome unico di toolchain all'interno della propria toolchain per la stessa regione e gruppo di risorse nel campo IBM Cloud. La regione della toolchain può essere diversa dal cluster e dalla regione del registro.

  3. Seleziona una regione.

  4. Seleziona un gruppo di risorse (Resource group).

  5. Opzionale: è possibile scegliere la toolchain di integrazione continua (CI) associata dal menu a tendina. Copia alcune delle configurazioni del CI per facilitare la configurazione della catena di strumenti CC. Questo potrebbe sovrascrivere alcuni dei valori già inseriti.

  6. Fai clic su Continue.

    Si può passare al passo successivo solo quando la configurazione del passo corrente è completa e valida. È sempre possibile fare clic su Indietro per visualizzare i passaggi precedenti del programma di installazione guidata. Il programma di installazione della catena di strumenti conserva tutte le impostazioni di configurazione dei passaggi successivi.

Alcuni passaggi includono un pulsante Passa alla configurazione avanzata. Per impostazione predefinita, questi passaggi presentano la configurazione minima. Tuttavia, gli utenti avanzati che necessitano di un controllo a grana più fine possono fare clic sulla levetta Passa alla configurazione avanzata per visualizzare le opzioni dell'integrazione sottostante.

Configura le integrazioni dello strumento CC

Esaminare le impostazioni predefinite e fornire le configurazioni definite dall'utente, ove necessario, per impostare l'integrazione dello strumento CC.

Segreti

Specificare le integrazioni del caveau segreto da aggiungere alla propria toolchain utilizzando le levette fornite. Per ulteriori informazioni, vedere Gestione di IBM Cloud segreti.

La toolchain CI supporta solo i tipi di segreto Segreti arbitrari e Credenziali AMM.

  1. Questa esercitazione utilizza IBM Cloud® Secrets Manager come cassaforte per i segreti. I campi Regione, Gruppo di risorse e Nome del servizio vengono popolati automaticamente in base alle scelte disponibili. Fare clic sugli indicatori a discesa per visualizzare le altre scelte.
  2. Inserite il vostro Secrets Manager nome istanza.
  3. Selezionare il tipo di autorizzazione.
  4. Fai clic su Continue.

Inventario

  1. Selezionare l' URL e del repository dell'inventario per registrare i dettagli dei manufatti costruiti dalla catena di strumenti CI.
  2. Fai clic su Continue.

Destinazione

  1. Inserite la vostra chiave API IBM Cloud.
  2. Inserite il tag Ambiente nell'Inventario per analizzare gli artefatti distribuiti.
  3. Fai clic su Continue.

Problemi

  1. Selezionare l' URL e Repository per registrare i numeri mentre la pipeline CC è in esecuzione.
  2. Fai clic su Continue.

Configurazione pipeline

Il repository di configurazione della pipeline contiene file YAML e script per la distribuzione, il test e altre attività personalizzate.

  1. Accettare le impostazioni predefinite per Source Provider.
  2. Seleziona una fonte valida Repository URL. Utilizzare il repository predefinito fornito per questo campo.
  3. Fai clic su Continue.

Archiviazione prove

  1. Selezionare l'opzione Utilizza archivio prove esistente.
  2. Selezionare l' URL e Repository che è stato creato quando si è configurato il toolchain CI. Per ulteriori informazioni sull'archiviazione delle prove, vedere Evidenze.
  3. Attivare il secchio IBM Cloud Object Storage per memorizzare tutte le prove nel secchio IBM Cloud Object Storage.
  4. Fai clic su Continue.

Bucket Object Storage cloud

  1. Verificare e accettare i dettagli precompilati automaticamente IBM Cloud Object Storage.
  2. Fornire la chiave API del servizio per scrivere su un'istanza Cloud Object Storage.
  3. Fai clic su Continue.

DevOps Insights catena di strumenti

  1. Inserire la propria DevOps Insights IBM Cloud chiave API.

  2. Accettare la configurazione predefinita.

    È possibile collegarsi a un'istanza esistente della toolchain IBM Cloud DevOps Insights dalla toolchain CI per l'ID della toolchain DevOps Insights. Ad esempio, se l' URL e è https://cloud.ibm.com/devops/toolchains/aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee?env_id=ibm:yp:us-south allora l'ID della toolchain è aaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee.

  3. Fai clic su Continue.

SonarQube

  1. Accettare la configurazione predefinita.
  2. Fai clic su Continue.

Strumenti facoltativi

Slack

È possibile aggiungere lo strumento Slack dopo la creazione della catena di strumenti.

  1. Inserite il vostro webhook Slack. Per ulteriori informazioni, vedere Slack webhook.
  2. Inserite il vostro canale Slack per inviare un messaggio.
  3. Inserire il nome della squadra Slack. Ad esempio, se la squadra URL https://team.slack.com, il nome della squadra è team.
  4. Scegliere gli eventi per i quali si desidera ricevere le notifiche per Notifiche automatiche di Slack.
  5. Fai clic su Continue.

Facoltativamente, è possibile attivare l'invio di notifiche con la proprietà slack-notifications Ambiente nella pipeline CD, utilizzando 0 = off, and 1 = on.

Crea la toolchain CC

  1. Nella pagina Riepilogo, fai clic su Crea toolchain e attendi la creazione della toolchain.

    Le singole integrazioni della catena di strumenti possono essere configurate dopo la creazione della pipeline.

Esplora la toolchain CC

  1. Ora che la catena di strumenti CC è stata creata, fare clic sulla piastrella cc-pipeline per aprire e visualizzare le pipeline CC Manual Trigger, CC Timed Trigger e Subpipeline Webhook Trigger.

Aggiorna l'app URL per eseguire la scansione dinamica

Per eseguire la scansione dinamica sull'ambiente di destinazione, è necessario fornire un'applicazione ( URL ) alla pipeline CC. La scansione dinamica esegue alcuni test di natura intrusiva. Utilizzare un ambiente di staging per eseguire la scansione dinamica. Seguire i passaggi per scaricare l'applicazione URL da ci-pipeline.

  1. Nella pagina Catena degli strumenti IC, fare clic sul riquadro ci-pipeline.
  2. Fare clic su Esegui contro il nome della pipeline. Osservare l'esecuzione di una pipeline. Attendere il completamento dell'esecuzione della pipeline.
  3. L'applicazione URL si trova alla fine del registro della fase di run stage dell'attività di deploy-dev dell'esecuzione della pipeline CI. Utilizza l' URL a per verificare che l'applicazione sia in esecuzione. Ad esempio, Application URL: http://<ipaddress>:<portno>.

Seguire i passaggi per aggiungere l'applicazione URL alla pipeline CC utilizzando l'attivazione manuale. Per ulteriori informazioni sull'elenco aggiornato, vedere Scansioni e controlli eseguiti nei controlli di conformità.

  1. Nella pagina Catena degli strumenti CC, fare clic sul riquadro pipeline CC.
  2. Fare clic su Impostazioni > Proprietà ambiente.
  3. Fare clic su Aggiungi > Valore testo.
  4. In Aggiungi proprietà, inserire il nome come app-url.
  5. Inserire Valore come http://<ipaddress>:<portno> che viene estratto da ci-pipeline.
  6. Fai clic su Aggiungi. Ora si è pronti a eseguire la pipeline CC utilizzando un trigger manuale. Viene visualizzata una pipeline CC completata, come mostrato nell'immagine.

pipeline CC riuscita
pipeline DevSecOps Continuous Compliance riuscita

L'esecuzione di una sottopiplina async completata, attivata durante la pipeline CC, viene visualizzata come mostrato nella cattura dello schermo.

La subpipeline async è stata eseguita con successo
DevSecOps Continuous Compliance async sub pipeline async è stata eseguita con successo

Problemi di incidente

Durante l'esecuzione della pipeline CC, i problemi di incidente, come vulnerabilità e CVE, vengono creati e allegati alle prove raccolte. Se vengono trovati in produzione, questi problemi con la data di scadenza vengono creati nel repository dei problemi menzionato nella configurazione della toolchain. Per ulteriori informazioni, vedi Problemi di incidente con data di scadenza.

Problema di incidente di esempioDevSecOps
Problema di incidente di esempio DevSecOps creato con la pipeline CC

Esplora DevOps Insights

Nei punti seguenti vengono caricate le prove dei controlli di conformità.

  • Deposito dell'armadietto delle prove.
  • Object Storage secchio.
  • DevOps Insights- Dalla catena degli strumenti fare clic su DevOps Insights.
  • DevOps Insights dashboard di qualità come mostrato nella cattura dello schermo.

DevSecOps CC evidenza
DevSecOps CC evidenza

Confronto tra pipeline CI e CC

Si è notato che la pipeline CI e CC hanno fasi comuni. Le scansioni e i controlli eseguiti sono simili per natura e dettagli. Per ulteriori informazioni, vedere Differenza tra pipeline CI e CC.

Passi successivi

È stata completata con successo la serie di esercitazioni per impostare la catena di strumenti CI, CD e CC e distribuire un'applicazione sicura utilizzando le pratiche DevSecOps...

Ora è possibile esplorare la possibilità di sviluppare e distribuire infrastrutture sicure come codice(IaC)utilizzando le pratiche DevSecOps.