In a scenario where cloud computing has rapidly revolutionized the way IT infrastructures are managed, reducing configuration times and maintenance costs, it becomes increasingly essential to enhance operational efficiency and security at every stage of an application development. The adoption of DevSecOps methodologies addresses this need, allowing for the automation of software development and release processes, integrating automated security controls throughout the entire software lifecycle. This thesis describes the internship experience at the company "Certimeter S.R.L.", with a particular focus on the project developed during the internship and the technologies used. The aim of the project is to demonstrate how a DevSecOps approach can be applied to create and maintain an "Infrastructure as Code" (IaC) in a Microsoft Azure environment, within which to release a microservices web application. The solution consists of several automation pipelines, which reduce all manual operations of code compilation, testing, and release to the simple press of a button that initiates the process. The system's security is ensured by the presence of testing tools that analyze the vulnerabilities of the static code, applicable to both the application and the infrastructure, whose resources are defined as blocks of code. Given the complexity and vastness of the proposed solution, the document also presents an introductory analysis of the methodologies, technologies, and tools used during the internship.

In uno scenario in cui il cloud computing ha rapidamente rivoluzionato il modo in cui le infrastrutture IT vengono gestite, riducendo tempistiche di configurazione e costi di manutenzione, diventa sempre più essenziale incrementare efficienza operativa e sicurezza in ogni fase dello sviluppo di una applicazione. L'adozione delle metodologie DevSecOps risponde a questa esigenza, consentendo di automatizzare i processi di sviluppo e rilascio del software, integrando controlli di sicurezza automatizzati durante l'intero ciclo di vita del software. Questa tesi descrive l'esperienza di stage presso l'azienda "Certimeter S.R.L.", con un particolare focus sul progetto sviluppato durante il percorso e le tecnologie utilizzate. L'obbiettivo del progetto è dimostrare come un approccio DevSecOps possa essere applicato per la creazione e la manutenzione di un "Infrastructure as Code" (IaC) in ambiente Microsoft Azure, al cui interno rilasciare una applicazione web a micro-servizi. La soluzione si compone di diverse pipeline di automazione, che permettono di ridurre tutte le operazioni manuali di compilazione, test e rilascio del codice alla semplice pressione di un tasto che avvia il processo. La sicurezza del sistema è garantita dalla presenza di strumenti che analizzano le vulnerabilità del codice statico, applicabili sia all'applicativo, sia all'infrastruttura, le cui risorse sono definite come blocchi di codice. Data la complessità e la vastità della soluzione proposta, l'elaborato presenta oltretutto una analisi introduttiva riguardante metodologie, tecnologie e strumenti utilizzati durante il percorso.

IaC e DevSecOps: soluzione per il rilascio automatizzato di infrastrutture e applicazioni in cloud

BINI, MANUEL
2023/2024

Abstract

In uno scenario in cui il cloud computing ha rapidamente rivoluzionato il modo in cui le infrastrutture IT vengono gestite, riducendo tempistiche di configurazione e costi di manutenzione, diventa sempre più essenziale incrementare efficienza operativa e sicurezza in ogni fase dello sviluppo di una applicazione. L'adozione delle metodologie DevSecOps risponde a questa esigenza, consentendo di automatizzare i processi di sviluppo e rilascio del software, integrando controlli di sicurezza automatizzati durante l'intero ciclo di vita del software. Questa tesi descrive l'esperienza di stage presso l'azienda "Certimeter S.R.L.", con un particolare focus sul progetto sviluppato durante il percorso e le tecnologie utilizzate. L'obbiettivo del progetto è dimostrare come un approccio DevSecOps possa essere applicato per la creazione e la manutenzione di un "Infrastructure as Code" (IaC) in ambiente Microsoft Azure, al cui interno rilasciare una applicazione web a micro-servizi. La soluzione si compone di diverse pipeline di automazione, che permettono di ridurre tutte le operazioni manuali di compilazione, test e rilascio del codice alla semplice pressione di un tasto che avvia il processo. La sicurezza del sistema è garantita dalla presenza di strumenti che analizzano le vulnerabilità del codice statico, applicabili sia all'applicativo, sia all'infrastruttura, le cui risorse sono definite come blocchi di codice. Data la complessità e la vastità della soluzione proposta, l'elaborato presenta oltretutto una analisi introduttiva riguardante metodologie, tecnologie e strumenti utilizzati durante il percorso.
IaC and DevSecOps: a solution for the automated deployment of cloud infrastructures and applications
In a scenario where cloud computing has rapidly revolutionized the way IT infrastructures are managed, reducing configuration times and maintenance costs, it becomes increasingly essential to enhance operational efficiency and security at every stage of an application development. The adoption of DevSecOps methodologies addresses this need, allowing for the automation of software development and release processes, integrating automated security controls throughout the entire software lifecycle. This thesis describes the internship experience at the company "Certimeter S.R.L.", with a particular focus on the project developed during the internship and the technologies used. The aim of the project is to demonstrate how a DevSecOps approach can be applied to create and maintain an "Infrastructure as Code" (IaC) in a Microsoft Azure environment, within which to release a microservices web application. The solution consists of several automation pipelines, which reduce all manual operations of code compilation, testing, and release to the simple press of a button that initiates the process. The system's security is ensured by the presence of testing tools that analyze the vulnerabilities of the static code, applicable to both the application and the infrastructure, whose resources are defined as blocks of code. Given the complexity and vastness of the proposed solution, the document also presents an introductory analysis of the methodologies, technologies, and tools used during the internship.
Autorizzo consultazione esterna dell'elaborato
File in questo prodotto:
File Dimensione Formato  
Tesi_Manuel_Bini_980479.pdf

non disponibili

Dimensione 4.17 MB
Formato Adobe PDF
4.17 MB Adobe PDF

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14240/163969