Aspetti di sicurezza nel Cloud Computing
|
|
|
- Floriano Costantini
- 10 anni fa
- Visualizzazioni
Transcript
1 Alma Mater Studiorum Università degli studi di Bologna SECONDA FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Informatica Aspetti di sicurezza nel Cloud Computing Tesi di Laurea in Sistemi Distribuiti Relatore: Chiar.mo Prof. Andrea Omicini Presentata da: Francesca Collina Correlatore: Dott. Ing. Nazzareno Pompei II Sessione Anno Accademico 2011/2012
2 A chi lotta per ottenere ciò che vuole...
3
4 Introduzione Il continuo aumentare delle richieste di servizi informatici necessari per soddisfare il singolo utente, ma anche il business, ha portato, con il passare del tempo, ad un incremento del numero di server utilizzati nei data center delle organizzazioni e ad un maggiore uso della virtualizzazione come tecnica di memorizzazione. Il risultato di questa recente evoluzione ha contribuito all introduzione di un nuovo tipo di tecnologia: il Cloud computing. Esso porta ad un aumento della capacità di storage ed elaborazione, ma in particolare la computazione passa da singole macchine, distribuite e indipendenti, a posizioni unificate e centralizzate. Il Cloud computing è un genere di virtualizzazione, ossia una delocalizzazione e astrazione di risorse di elaborazione, di memorizzazione e di contenuti, distribuiti e raggiungibili attraverso la rete. Si conoscono vari aspetti del Cloud, a livello di interoperabilità con lo user, a livello di architettura e di deployment. Questa nuova tecnologia porta ad ottenere maggior flessibilità, ottimizzazione delle risorse e contenimento dei costi, ma soprattutto introduce il modello pay-as-you-go, ovvero poter sfruttare un servizio solo per il minimo necessario di cui l utente abbia bisogno. L applicazione di tale tecnologia ha evidenziato la presenza di alcuni problemi riguardo la sicurezza, ovvero l accesso ai dati e ai servizi, legati soprattutto alla sua implementazione nei meccanismi di connessione alla rete e trasporto delle informazioni, ma anche riguardo la privacy, in particolare i
5 ii INTRODUZIONE inerenti a questioni politico legali. L obiettivo di questa tesi è di mostrare una panoramica sugli aspetti principali del Cloud computing, soffermandosi principalmente sugli aspetti di sicurezza e privacy. Viene messa in evidenza la gestione dei dati, analizzando sia l aspetto informatico stesso, ma anche l aspetto giurisdizionale di alcune situazioni. Nel primo capitolo, si mette in luce la nascita del Cloud computing, studiando la sua intera evoluzione. Dal Grid Computing, all Utility Computing fino al Cloud come Software as a Service. Nel secondo capitolo, viene presentato il Cloud computing in tutti i suoi aspetti. Le caratteristiche principali, l architettura e i modelli di deployment. Nel terzo capitolo, si entra nel merito del tema della tesi. Vengono descritti i principali problemi di sicurezza che si possono presentare nell uso del Cloud. Concernenti a questi, vengono mostrati alcuni aspetti giuridici nel rapporto tra client e provider. Nel quarto capitolo, si va nello specifico del contratto tra client e provider. Aspetti positivi e negativi di questa gestione. Nel quinto capitolo, si ha un esempio concreto di quello che può essere un accordo tra le parti. Si parla di Service Level Agreement, del quale si cerca di spiegare le principali caratteristiche, la struttura e le sue funzioni. Infine, viene studiato come, in alcuni casi, è gestita la sicurezza in Ajaxplorer, software open source.
6 Indice Introduzione i 1 Nascita e sviluppo del Cloud computing Grid Computing Principali Tipi Problematiche principali Utility Computing Grid computing vs Utility computing Software as a Service Cloud Computing Definizione Principali attori Caratteristiche principali Architettura del Cloud computing Hardware as a Service (HaaS) Software as a Service (SaaS) Platform as a service (PaaS) Infrastructure as a Service (IaaS) Data storage as a Service (DaaS) Business Process Layer (BPaaS) Principali aspetti in comune Modelli di deployment di Cloud Private Cloud iii
7 iv INTRODUZIONE Public Cloud Community Cloud Hybrid Cloud Vantaggi e svantaggi Vantaggi Svantaggi Cloud computing vs Grid computing Sicurezza e rischi nel Cloud Computing Access control Identity Data lock-in Storage Location Problematiche nei Services Models Modelli di deployment Tecniche di protezione Controllo e audit Crittografia Aspetti e problemi giuridici Problematiche tra cliente e fornitore di servizi Trasferimento dati Service Level Agreement Definizione di Service Definizione di Service Level Agreement Caratteristiche principali SLA Performance Management Metrics Quality of Service Creazione di SLA Struttura SLA
8 INDICE v 5.5 Approcci generali alla SLA SLA: lato client e lato provider Lato client Lato provider Problematiche SLA Problem Management Customer Duties and Responsibilities Monitoring di SLA Sicurezza SLA Security Service Level Agreement (Sec-SLA) Cos è il Sec-SLA Linguaggio di programmazione per SLA XML e SLA Rappresentazione delle parti in XML Descrizione del servizio in XML Descrizione metrica del servizio in XML Descrizione obblighi in XML Descrizione azione in XML SLA per il Cloud Computing Web Service Level Agreement Servizi WSLA Ajaxplorer Alcuni aspetti di sicurezza in Ajaxplorer Conclusioni 68 Bibliografia 69
9
10 Capitolo 1 Nascita e sviluppo del Cloud computing Il Cloud computing nasce come evoluzione di tecnologie preesistenti. Si inizia parlando di grid computing o sistemi grid, che rappresentano un infrastruttura di calcolo distribuito, utilizzati per l elaborazione di consistenti quantitativi di dati. Essi permettono la condivisione coordinata di risorse all interno di un organizzazione virtuale. L utility computing, invece, è l inizio di quello che oggigiorno viene definito servizio on-demand,ovvero è un raggruppamento di risorse di calcolo, il cui vantaggio risiede nei bassi costi iniziali di acquisizione di risorse del computer. In seguito, si arriva a parlare di SaaS, ovvero Software as a Service, visto come un software che appartiene, che è distribuito e amministrato da remoto, da uno o più provider. Esso consente una condivisione di processi applicativi e risorse di storage in ambienti uno-a-molti, con delle basi di pay-per-use, o sottoscrivendo un contratto. Infine il Cloud computing, il quale si crede sia oggi la tecnologia che possa rimodellare l industria IT. 1
11 2 1. Nascita e sviluppo del Cloud computing 1.1 Grid Computing A computational GRID is a hardware and software infrastructure that provides dependable, consistent, pervasive, and inexpensive access to high-end computational capabilities. La Grid è un ambiente persistente, che rende possibile realizzare applicazioni che integrino risorse di strumentazione, di visualizzazione, di calcolo e di informazione provenienti da dominii amministrativi diversi e geograficamente distribuiti. Principalmente essa coordina e condivide risorse computazionali di diverso tipo che non sono sottoposte a un controllo centralizzato, usa protocolli, librerie e interfacce standard, aperte e general-purpose e garantisce Quality of Service (QoS). In particolare dà la possibilità di condividere in modo coordinato risorse all interno di un organizzazione virtuale dinamica e multi-istituzionale (Virtual Organization, VO) Principali Tipi Esistono tre principali tipi di Grid: Grid computazionale Grid dati Grid applicazioni e/o servizi La Grid computazionale è vista come l aggregazione di risorse di calcolo provenienti da dominii di sicurezza e gestione differenti,è finalizzata a fornire, ad un insieme di utenti, potenza di calcolo on-demand, in modo disaccoppiato dalla provenienza. La Grid dati può essere considerate una forma evolutiva del web: nasce per contenere una grande quantità di dati distribuiti in dominii differenti.
12 1.1 Grid Computing 3 Figura 1.1: Struttura Grid Computing Infine la Grid applicazioni e/o servizi, è uno degli aspetti più innovativi, in quanto assume il ruolo di Application Service Provider (ASP), cioè prende in locazione un certo tempo di esecuzione di una applicazione su di un server remoto e consente anche di realizzare al suo interno nuove specifiche applicazioni Problematiche principali Il Grid computing presenta alcuni considerevoli problemi. Innanzitutto, essendo una tecnologia che sfrutta le potenzialità di internet, essi possono sorgere proprio dalla banda e latenza non note a priori. Ciò dipende dal traffico di dati che contiene, ma soprattutto dal cambiamento nel tempo della connettività. Un altro fattore che influisce negativamente può essere la necessità di partizione e aggregazione delle varie macchine virtuali in modo dinamico. A livello di gestione poi, si notano aspetti riguardanti la molteplicità di politiche che non necessariamente sono compatibili fra loro, la non conoscenza dell affidabilità dei nodi a priori e, per finire, aspetti tipici sulla sicurezza.
13 4 1. Nascita e sviluppo del Cloud computing 1.2 Utility Computing È un servizio che permette la distribuzione, l amministrazione e la scalabilità on line dei servizi offerti all utente, il quale paga per le risorse che consuma. Gli utenti vogliono essere a conoscenza di cosa ospita ogni server e controllare le risorse direttamente. 1.3 Grid computing vs Utility computing Sia il Grid computing sia l utility computing sono basati su reti eterogenee, hanno una struttura distribuita geograficamente e anche le stesse risorse sono eterogenee. La principale differenza tra le due tecnologie consiste nella gestione dell interorganizzazione della Grid e dell intra-organizzazione dell utility. Quando si parla di inter-organizzazione si nota che le politiche di gestione sono diverse, così come i requisiti di sicurezza, si hanno problemi di SLA (Service Level Agreement) e di accounting. Tutto ciò non esiste nell inter-organizzazione dell utility computing, dove avviene l esatto contrario. 1.4 Software as a Service Un sempre maggior numero di applicazioni software di utilizzo corrente sono applicazioni Web, quindi di fatto applicazioni SaaS, eseguite su computer di terzi, nonchè mantenute da questi ultimi, disponibili praticamente on the Cloud. Il termine SaaS viene spesso usato indistintamente al posto di Cloud computing, ma questi due termini non vanno confusi: è facilmente desumibile come il Cloud computing sia un concetto ben più esteso, che riguarda un nuovo paradigma computazionale e che comprende diverse nuove categorie di servizi, tra le quali anche SaaS. Si può quindi affermare che un architettura
14 1.4 Software as a Service 5 di Cloud computing è in relazione con SaaS, in quanto può essere considerata come il miglior meccanismo per erogare Software as a Service.
15 6 1. Nascita e sviluppo del Cloud computing Figura 1.2: Cloud Computing
16 Capitolo 2 Cloud Computing Figura 2.1: Definizione di Cloud Computing Il Cloud computing è un paradigma in evoluzione, recentemente è emerso più volte come parola nell ambiente di sistemi distribuiti. 1
17 2 2. Cloud Computing 2.1 Definizione Cloud Computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (es., networks, servers, storage, applications, and service) that can be rapidly provisioned and released with minimal management effort or service provider interaction. 1 La definizione NIST caratterizza importanti aspetti del Cloud Computing ed è destinata a servire come mezzo per il confronto tra i servizi e le varie strategie di distribuzione, cercando anche di fornire una distinzione da ciò che è il Cloud Computing e da come utilizzarlo. I modelli di servizi e di distribuzione definiti creano una tassonomia semplice che non porta, però, a prescrivere o a limitare qualsiasi metodo di implementazione, funzionamento ed erogazione del servizio Principali attori Cloud Consumer: è la persona o l organizzazione che usa servizi del Cloud provider con cui mantiene relazioni di business. Cloud Provider: è la persona, l organizzazione o l ente che rende disponibili i servizi al Cloud consumer. Cloud Carrier: è l intermediario che fornisce connettività tra il Cloud consumer ed il Cloud provider. 1 [U.S. NIST (National Institute of Standards and Technology)]
18 2.2 Caratteristiche principali Caratteristiche principali Tra le caratteristiche di base del Cloud troviamo: 1. On-demand self-service: un consumer, con una necessità istantanea, può usufruire di computing recources in modo automatico, senza dover contattare il fornitore; 2. Broad network access: queste computing resources sono utilizzate tramite la rete (es. Internet) e sono usate da vari client application con piattaforme eterogenee (mobile phones, laptops ecc.). Quello che deve essere garantito è un accesso alla rete ampio e affidabile. Oggigiorno, il continuo e maggior aumento di collegamenti ad alta banda permette l utilizzo di servizi e di software potenzialmente localizzati in tutto il mondo; 3. Resource pooling: le risorse di un provider di servizi Cloud sono raggruppate in modo da riuscire a soddisfare una moltitudine di consumers, usufruendo del multi-tenancy e della virtualizzazione. Il risultato di questo aggregare è che l hardware diventa invisibile al consumer, che in genere non ha il controllo o le conoscenze per gestirlo. Per esempio, il consumer non sa dove i suoi dati sono salvati nel Cloud; 4. Rapid elasticity: per i consumatori, le risorse di calcolo diventano immediate: non ci sono impegni e contratti diretti, in quanto questa elasticità permette sempre di avere un utilizzo pari alle necessità. Inoltre la risorsa fornita appare al consumer infinita, perciò il consumo può aumentare rapidamente per soddisfare le richieste di picco in qualsiasi momento; 5. Measured service: nonostante le computing resources siano raggruppate e condivise da molti consumers, l infrastruttura Cloud è in grado di sfruttare appropriati meccanismi, per misurare l uso di queste resources dei singoli consumer e poter garantire il costo in base all uso che si fa del servizio.
19 4 2. Cloud Computing 2.3 Architettura del Cloud computing La fase di passaggio verso il Cloud computing sta delineando nuove categorie di servizi IT, che consentono di creare applicazioni, database e servizi Web di qualunque genere, garantendo storage, backup, data replication, data protection, security, ecc. Tra le principali categorie ricordiamo Hardware as a Service (HaaS), Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS) e Data storage as a Service (DaaS). Grazie all impiego di esse è possibile evitare ingenti costi infrastrutturali per l acquisto, la manutenzione, il supporto e/o l aggiornamento delle stesse infrastrutture informatiche. Come descritto, il Cloud computing può essere esteso attraverso i seguenti cinque service models : 1. Hardware as a Service (HaaS); 2. Software as a Service (SaaS); 3. Platform as a Service (PaaS); 4. Infrastructure as a Service (IaaS); 5. Data storage as a Service (DaaS).
20 2.3 Architettura del Cloud computing Hardware as a Service (HaaS) HaaS risulta lo strato più basso nella struttura del Cloud. Quest ultimo si basa principalmente sulla creazione di Virtual Machine (VM) nei vari server, dove si hanno i data center di elevate dimensioni. L utente finale non nota i problemi inerenti a questo strato, può solo essere a conoscenza della VM che vi è, senza però sapere dove è localizzata a livello di server Software as a Service (SaaS) The capability provided to the consumer is to use the provider s applications running on a Cloud infrastructure. 2 Il termine si riferisce alla fornitura di un applicativo in modalità centralizzata e accessibile via Web. La caratteristica comune di questa tipologia di servizio è quella di fornire un applicativo che sia condiviso tra tutti i clienti a meno di funzionalità opzionali. I consumer realizzano le proprie applicazioni in un ambiente hosting, al quale si accede, attraverso il network, da vari client (es. web browser, PDA, ecc.) sfruttando applicazioni caratteristiche. Questo strato fornisce il software come servizio accessibile, senza necessità di installazioni sulla singola macchina. Nella maggioranza dei casi, una singola istanza dell applicativo gestisce clienti diversi, pur garantendo la separazione logica dei dati di ciascun cliente. Il SaaS spesso impiega un sistema architetturale multi-tenancy, ovvero, le diverse applicazioni dei consumers sono organizzate in un singolo ambiente, per poter ottimizzare la velocità, la sicurezza e il mantenimento. Questo strato semplifica il lavoro sia a livello del provider, il quale avrà meno problemi di gestione e sia per il consumer, il quale può permettersi di accedere allo stesso ambiente di lavoro da qualsiasi dispositivo e da qualsiasi luogo. 2 [U.S. NIST (National Institute of Standards and Technology)]
21 6 2. Cloud Computing Infine i servizi applicativi offrono un interfaccia via Web Services, che permette l integrazione e l interoperabilità con altri applicativi e che quindi consente di sviluppare nuove applicazioni, seguendo i principi SOA (Service Oriented Architecture). Alcuni esempi di SaaS : SalesForce.com, Google Mail, Google Docs Platform as a service (PaaS) The capability provided to the consumer is to deploy onto the Cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider. 3 PaaS è una piattaforma di sviluppo che supporta il Software Lifecycle, rendendo disponibile, via Web, tutti quegli strumenti e prodotti utilizzati nello sviluppo e delivery di nuovi servizi applicativi. Ad esempio, sono piattaforme che rendono disponibili strumenti di sviluppo come workflow, di creazione di interfacce web, database integration, storage, integrazione di web-service. La principale differenza tra PaaS e SaaS è che SaaS offre esclusivamente la sola applicazione, mentre il PaaS supporta una piattaforma di sviluppo in cui si ha sia l applicazione completata sia quella in-progress. Il PaaS richiede un infrastruttura e include anche un ambiente di sviluppo (es. tools). Alcuni esempi di PaaS: Google AppEngine, Microsoft Azure e Force.com 3 [U.S. NIST (National Institute of Standards and Technology)]
22 2.3 Architettura del Cloud computing Infrastructure as a Service (IaaS) The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. 4 IaaS viene definito come lo strato che fornisce risorse fondamentali per gli strati superiori. Si riferisce, in particolare, alla modalità di offrire come servizi infrastrutturali, risorse di elaborazione, memoria e comunicazione, come macchine virtuali, CPU, memoria, schede LAN, apparati di rete e loro configurazioni, servizi di backup. Il Cloud consumer usufruisce direttamente dell infrastruttura IT (processing, storage, networks, e altri fondamentali risorse). La virtualizzazione è ampiamente sfruttata nel IaaS al fine di integrare/scomporre le risorse fisiche in una metodologia ad-hoc per soddisfare la crescente o la riduzione della domanda di risorse da parte dei consumer. La strategia fondamentale della virtualizzazione è quella di creare Virtual Machines indipendenti, chiamate anche istanze, le quali sono isolate dall hardware sottostante e da altre Virtual Machine. Questa strategia mira a trasformare l architettura software di applicazione in modo che più instanze (da diversi consumers) riescano a girare in una singola applicazione. Alcuni esempi di IaaS: Amazon s EC2, Eucalyptus, OpenNebula Data storage as a Service (DaaS) La distribuzione di virtualizzazione on demand diventa un Cloud service separato. DaaS può essere visto come un tipo speciale di IaaS. La motivazione è che sistemi di database sono spesso legati a un costo di un server o di una licenza software. DaaS permette al consumer di pagare quello di cui concretamente usufruisce, più che pagare l intera licenza di un intero database. 4 [U.S. NIST (National Institute of Standards and Technology)]
23 8 2. Cloud Computing Alcuni esempi di DaaS: Amazon S3, Google BigTable, Apache HBase Business Process Layer (BPaaS) A volte conosciuto con altri nomi, ad esempio Enterprise-as-a-Service, questo livello si inserisce all interno della tematica più ampia del business process management, che è un approccio strutturato basato su metodi, politiche, metriche per gestire ed ottimizzare continuamente le attività e i processi di un organizzazione. Questo avviene per mezzo di un layer intermedio, in grado di consentire una suddivisione netta tra le regole e la logica applicativa, vale a dire un motore di esecuzione; per questo motivo può essere visto come un estensione del livello precedente, in quanto è in pratica un software spinto fino a livelli massimi di configurabilità. Tutto ciò, in una visione Cloud, può essere spostato al di fuori del controllo dell utente, che potrà accedere ai servizi attraverso un interfaccia web e tramite architetture Web oriented Principali aspetti in comune Sicuramente queste tipologie di servizi, prestano e offrono caratteristiche comuni che possono essere analizzate: la facilità dell accesso al servizio, tramite semplici interfacce web, porta a poter gestire un auto-configurazione del servizio richiesto (selfprovisioning); la disponibilità di un servizio fruibile da clienti diversi (multitenancy), poichè i clienti condividono le stesse risorse hardware o software, pur mantenendo una separazione logica o fisica dei dati; minor spese di risorse, in quanto rese disponibili da chi fornisce il servizio; accesso ai servizi da remoto mediante interfacce che sono indipendenti dal tipo di device utilizzato;
24 2.3 Architettura del Cloud computing 9 aggiornamenti software o nuove funzionalità sono resi disponibili a tutti i clienti del servizio, in maniera trasparente e normalmente senza ulteriori aggravi di spesa da parte degli utenti; possono essere resi disponibili dei servizi che sono il risultato di un integrazione di differenti servizi disponibili nei vari Cloud, servizi che possono essere configurati anche dinamicamente in base ad esempio a criteri di scalabilità, di disponibilità delle risorse, o ai costi di erogazione dei servizi stessi. Figura 2.2: Services Models
25 10 2. Cloud Computing 2.4 Modelli di deployment di Cloud Figura 2.3: NIST Visual Model of Cloud Computing Definition La descrizione precedente prevedeva una prospettiva del Cloud dal punto di vista dell utilizzatore, ora, invece, vediamo le distinzioni dal punto di vista del provider, partendo da quattro modelli: 1. Private Cloud; 2. Public Cloud; 3. Community Cloud; 4. Hybrid Cloud.
26 2.4 Modelli di deployment di Cloud Private Cloud L infrastruttura Cloud è utilizzata esclusivamente all interno di una singola organizzazione e gestita dall organizzazione stessa o da un terzo. La motivazione per impostare un Cloud privato all interno di una organizzazione ha diversi aspetti: innanzitutto, per massimizzare e ottimizzare l utilizzo delle attuali risorse interne, in secondo luogo, per problemi di sicurezza, tra cui la riservatezza dei dati. In terzo luogo, poi, risulta di notevole importanza a livello di costo, basso, al contrario di quello del trasferimento dati dalla locale infrastruttura IT a un Cloud pubblico, che appare piuttosto elevato Public Cloud Questo tipo di Cloud è la forma più dominante di distribuzione. Nel public Cloud il provider di servizi ha la piena proprietà e padronanza dell intera struttura, con la propria politica, il proprio valore e profitto, e il proprio costo. La connessione che si sfrutta, il piú delle volte, può anche essere una VPN, per collegarsi direttamente con la rete aziendale. Esempi di public Cloud popolari sono: Amazon EC2, S3, Google AppEngine, e Force.com Community Cloud Si parla di community Cloud quando diverse organizzazioni insieme costituiscono e condividono la medesima infrastruttura, così anche le politiche, i requisiti e i valori.
27 12 2. Cloud Computing Hybrid Cloud L Hybrid Cloud è una combinazione di due o più Cloud (privata, comunity o pubblica) rimanendo entità uniche, ma sono tenute insieme da tecnologie standardizzate che permettono la gestione dei dati e la portabilità delle applicazioni. Le organizzazioni utilizzano il modello ibrido per ottimizzare le proprie risorse, per aumentare le loro competenze di base usufruendo gradualmente del Cloud. I servizi (IaaS,PaaS ecc) sono erogati da un infrastruttura distribuita tra i data center del consumer e del provider. Il problema principale di questo tipo di Cloud è capire come distribuire nel modo migliore i carichi elaborativi, fra private e public e come integrare le due architetture per mezzo di tecnologie stardard o proprietarie. È interessante notare come Amazon Web Service (AWS) ha recentemente lanciato un nuovo tipo di modello di distribuzione Virtual Private Cloud (VPC), un ponte sicuro e senza soluzione di continuità tra un organizzazione di infrastruttura IT esistente e il Cloud Amazon pubblico. Questa si posiziona come un misto fra Private Cloud e Public Cloud. Viene considerato pubblico perchè usa le risorse di calcolo comuni da parte di Amazon. Tuttavia è anche privata per due ragioni: in primo luogo, il collegamento IT legacy e il Cloud è garantito da una rete privata virtuale, sfruttando, in questo modo, il vantaggio di sicurezza del Cloud privato. Non a caso, tutte le politiche di sicurezza aziendale si applicano ancora alle risorse sul Cloud anche se si trova su un Cloud pubblico. In secondo luogo, AWS dedica una serie di risorse isolate per la VPC. Questo non significa che gli utenti siano costretti a pagare queste risorse isolate ; essi, infatti, possono continuare a usufruire del pay-per-use. VPC rappresenta un perfetto equilibrio tra controllo (Private Cloud) e flessibilità (Public Cloud).
28 2.5 Vantaggi e svantaggi Vantaggi e svantaggi Vantaggi Come abbiamo visto il Cloud computing è in grado offrire diverse caratteristiche di servizio che risultano utili per l user finale. Infrastruttura agile : i servizi IT, basati su Cloud, sono sempre più in grado di sostenere una forza lavoro sempre maggiore, permettendo ai consumatori di poter accedere alle proprie risorse ovunque essi si trovino. Risposte rapide: il Cloud permette di potersi espandere facilmente, potendo soddisfare le esigenze. Non è più necessario dover acquistare, da parte di aziende, di risorse di calcolo, in quanto il Cloud garantisce variazioni e richieste on-demand della potenza di elaborazione e di calcolo. Minor costi: non si hanno più costi eccessivi di manutenzione delle infrastrutture IT. Un servizio Cloud è disponibile on-demand, seguendo la logica del pay-per-use, ovvero acquistando solo quello di cui si usufruisce. Si riducono sprechi di risorse e, di conseguenza, la spesa. Se si necessita di una maggior potenza di calcolo, è possibile adottare nuovi applicativi senza dover affrontare investimenti onerosi. Minor guasti al sistema: con l adozione del Cloud computing, si evitano problemi di interruzione del servizio. Ciò significa, che se si verifica un guasto ad un singolo nodo, si continua ad avere comunque funzionalità dal servizio. I tempi di ordinazione, realizzazione, installazione e configurazione sono estremamente ridotti. Così come i costi di manutenzione e riparazione.
29 14 2. Cloud Computing User friendly: la sua interfaccia risulta alquanto semplice, che nella maggioranza dei casi è Web, porta ad un facile rapporto tra l user e l applicazione Cloud in sè Svantaggi Sicuramente, uno dei problemi principali a cui si deve far fronte, riguarda la privacy e la sicurezza dei propri dati. Questa perplessità afferisce alla riservatezza ed alla legalità, non solo dei dati personali, ma ancora di più dei dati sensibili. L uso di servizi Cloud comporta l accettazione di termini d uso e proprio i dati vengono trattati secondo i termini acettati. Altri problemi riguardanti il Cloud, nella maggior parte dei casi, possono derivare dalla gestione della rete. La velocità, il rischio di perdere pacchetti dati nel trasferimento, ecc. Può capitare che si arrivi, anche, ad una saturazione di accesso al servizio, dovuta alle tante richieste, con conseguenti problemi di accesso.
30 2.6 Cloud computing vs Grid computing Cloud computing vs Grid computing Esistono evidenti somiglianze tra il Cloud computing e il Grid computing descritte nel capitolo precedente. Grid e Cloud computing si sono imposti soluzioni di rilievo nell ambito di gestione dei dati e delle risorse di calcolo distribuito, portando ad un livello più avanzato la gestione delle collaborazioni e la qualità del flusso informativo. Tuttavia tra Grid e Cloud si rilevano differenze significative: la grid sottolinea la condivisione delle risorse per creare un organizzazione virtuale; il Cloud è spesso di proprietà di una singola organizzazione fisica, la quale alloca le risorse per le diverse istanze in esecuzione; la grid mira a fornire la massima potenzialità e capacità di calcolo per compiere compiti abbastanza consistenti, attraverso la condivisione delle risorse; il Cloud punta a soddisfare soprattutto in tempo reale le richieste dei diversi utenti; la grid cerca di ottenere la massima elaborazione; il Cloud, allo stesso tempo, cerca di ottimizzare la capacità di elaborazione.
31 16 2. Cloud Computing
32 Capitolo 3 Sicurezza e rischi nel Cloud Computing Security controls in cloud computing are, for the most part, no different than security controls in any IT environment. However, because of the cloud service models employed, the operational models, and the technologyies used to enable cloud services, cloud computing may present different risks to an organization than traditional IT solutions. 1 Come visto nei capitoli precedenti, il Cloud computing ha dato al mondo IT un grande contributo a livello di possibilità e di servizi disponibili. Si è assistito ad un incremento, in numerosità e complessità, sia delle tipologie di servizi fruibili, sia delle tipologie di fornitori di servizi, che hanno dato vita ad un grande sistema di offerte particolarmente articolato e complesso. A fronte di questi indubbi vantaggi, ogni nuova tecnologia presenta problematiche di vario genere. Per questo, si nota una certa cautela nell affidarsi completamente al Cloud computing, specialmente per le aziende, le quali sentono il rischio di trasferire certi processi aziendali nel Cloud, laddove ci siano informazioni di natura confidenziale o non tutelate da normative nazionali e/o internazionali. 1 [Cloud Security Guidance di CSA (Cloud Security Alliance)] 17
33 18 3. Sicurezza e rischi nel Cloud Computing Questa nuova tecnologia presenta diversi aspetti problematici, non solo si parla di problemi classici (e.g. data privacy, data lock-in, scalable storage, ecc), ma vi sono anche aspetti di tipo legale, derivanti da questioni riguardanti i fornitori di servizio, i quali hanno la necessità di disporre di infrastrutture in vari luoghi geografici. In questo modo, il cliente è esposto a diverse giurisdizioni, in base al luogo geografico, quindi sottoposto a normative specifiche. 3.1 Access control I clienti interessati hanno il diritto e la possibilità di sapere dove i loro dati si trovano ed eventualmente poter decidere se tenerli o cancellarli. La domanda spontanea che sorge è: ma si è sicuri che una volta cancellati, i dati siano stati veramente eliminati? Chi assicura tutto ciò? Nel momento in cui si pretende uno spostamento di dati, una cancellazione o modifica, ci si deve affidare al provider, sapendo che ha il diretto accesso alle risorse. Molti problemi sono causati, per esempio, dalla diminuzione del controllo da parte del titolare sui propri dati e sul trattamento di questi a carico del provider, in quanto i dati non risiedono sotto il diritto del controllo del titolare. Inoltre, si ha anche un aumento di esposizione dei dati critici, dovuta alle caratteristiche architetturali condivise, tipiche del Cloud computing. Un altro aspetto rilevante è l aumento dell utilizzo di reti pubbliche per l accesso a risorse remote. Per evitare queste problematiche, causando violazioni di privacy o semplicemente perdita di dati, si cerca, per esempio, di limitare l accesso ai dati, solo in caso di necessità. Controllare in background coloro che lavorano in questo ambito, formare il personale addetto sulla base di certi requisiti, fornire un organizzazione in materia di accesso ai set di dati, da parte del personale.
34 3.1 Access control 19 Questo tipo di problema si basa solo esclusivamente sulla lealtà di un singolo individuo, non ha soluzioni o cause prettamente tecnologiche. Al giorno d oggi, però, è sempre più frequente questa minaccia e sempre più difficile è contenere questi rischi, trovando metodi e risoluzioni per far scomparire il pericolo. È opportuno capire i principali rischi, seguendo il punto di vista classico di localizzazione del dato in ottica privacy: data-at-rest: in questa sezione si pone attenzione alla cancellazione dei dati. Non sempre si ha la garanzia dal provider che i dati siano effettivamente eliminati in maniera sicura, soprattutto nel caso in cui si abbia una rescissione del contratto o una riallocazione di risorse IT. data-in-transit: questo termine specifica che i dati vengono memorizzati entro il perimetro del provider, a prescindere dal tipo di dati di cui si tratta. In questo caso specifico, si assiste al passaggio di dati dal cliente al fornitore, dando origine ad un flusso informativo tra due ambienti. Questo transito di informazioni deve essere regolato con grande attenzione, a livello tecnologico, nelle responsabilità e quindi anche a livello contrattuale. Spesso i dati in transito vengono sottoposti a cifratura, la quale è considerata la miglior arma per ridurre i rischi in questa delicata fase di passaggio di informazioni; data-in-process: in questo caso, come la parola stessa suggerisce, ci si riferisce al trattamento dei dati, i quali non risultano però cifrati, a differenza del caso precedente, e quindi sono vulnerabili per ogni tipo di pericolo, anche non Cloud;
35 20 3. Sicurezza e rischi nel Cloud Computing Identity Identità consiste in un insieme di informazioni associate a una specifica entità. Le piattaforme cloud dovrebbero garantire e fornire un robusto sistema di gestione di queste. Infatti esso dovrebbe includere, per esempio: identity provisioning e deprovisioning, identity information privacy, identity federation, authentication and authorization. Inoltre, tale sistema dovrebbe adottare standard esistenti come: SPML 2, SAML 3, OAuth 4 e XACML 5, per garantire una sicura identità fra entità interagenti all interno di dominii diversi e piattaforme Cloud. 2 Il Service Provisioning Markup Language: è lo standard aperto per l integrazione e l interoperabilità delle richieste di servizio di provisioning. Provisioning è l automazione di tutte le fasi necessarie per gestire (installare, modificare e revocare) i diritti di accesso dell utente o di sistema o dati relativi ai servizi di pubblicazione elettronica. 3 Security Assertion Markup Language: è lo standard per lo scambio di dati di autenticazione e autorizzazione tra domini di sicurezza. SAML è un protocollo basato su XML che utilizza i token di protezione contenente informazioni da trasmettere tra un provider di identità e di un servizio web. 4 OAuth è un protocollo aperto che permette l autorizzazione di API di sicurezza con un metodo standard e semplice sia per applicazioni portatili che per pc fisso e web. In pratica permette all utente di dare l accesso alle sue informazioni presenti, ad esempio, su un sito detto service provider, ad un altro sito, chiamato consumer, senza però condividere la sua identità 5 extensible Markup Language Access Control: è lo standard che definisce un linguaggio dichiarativo di controllo di accesso attuato in XML, e di un modello di trasformazione che descrive come valutare le richieste di autorizzazione in base alle regole definite nei criteri.
36 3.1 Access control Data lock-in Cloud lock-in is a situation in wich a cloud user or customer will experience issues when he or she decides to switch to another Cloud vendor, due to the complexity of the switching process. Questo problema consiste nell estrarre dati da un Cloud, senza perdere informazioni personali, potendo riutilizzarli a sua volta su un altro Cloud. La difficoltà di estrarre dati dal Cloud impedisce a organizzatori e aziende di usufruirne, in quanto aumenterebbe i costi e i problemi di affidabilità. La principale soluzione a questa problematica sarebbe nel personalizzare le API, in modo che uno sviluppatore possa implementare servizi SaaS e gestire dati attraverso più provider di cloud computing, senza rischiare di perdere informazioni, nel caso siano correlati con altri Cloud. In particolare, la standardizzazione di API consentirebbe un nuovo modo di utilizzo del software, in quanto potrebbe essere utilizzato in un centro dati interno e in un cloud pubblico Storage Location Nella maggior parte dei casi, il fornitore di servizi può memorizzare i vari dati e/o file forniti dal cliente sul server a lui più conveniente, per la gestione del servizio. Ciò porta, talvolta, ad un trasferimento dei dati in server fuori dalla propria regione, o anche fuori dal proprio paese d origine. Questo tipo di organizzazione comporta problemi riguardanti il rispetto di regole e leggi, alle quali le stesse organizzazioni che richiedono il servizio devono sottostare. Per evitare questo rischio, si dovrebbe cercare di ottenere maggior informazioni riguardo questi aspetti, ancora prima di prendere un accordo con il fornitore di servizi. Ad esempio, valutare le leggi e i regolamenti che le organizzazioni devono seguire, quindi capire se è possibile autorizzare il trasferimento dei dati al di fuori della propria zona geografica evita di violare una giurisdizione specifica.
37 22 3. Sicurezza e rischi nel Cloud Computing Problematiche nei Services Models Problemi IaaS Come spiegato nel secondo capitolo, l IaaS si base soprattutto sulla virtualizzazione come strumento principale, assieme all uso di Virtual Machine. Proprio in quest ultima si annidano varie e serie minacce alla sicurezza, quali malware e virus. La sicurezza delle Virtual Machine è la responsabilità dei consumatori Cloud. Ogni consumatore può utilizzare i propri controlli di sicurezza in base alle proprie esigenze. La protezione di dati, nelle Virtual Machine, a differenza dei server fisici, crea problemi anche in stato di offline. In molti casi, il file immagine della Virtual Machine può essere compromesso da codici maligni, come può essere anche sottratto al consumatore. Inoltre, a volte, i dati originari relativi ad un consumatore, salvati in questo tipo di sistema, possono rimanere in queste VM, che a loro volta vengono riutilizzate da terzi. Si devono tener presente anche i rischi derivanti dalla rete virtuale, ovvero la condivisione delle infrastrutture dello stesso server o delle stesse reti fisiche che può aumentare la possibilità di sfruttare le vulnerabilità dei server DNS 6, DHCP 7, IP protocol 8. 6 Domain Name System: è un sistema utilizzato per la risoluzione di nomi dei nodi della rete (host) in indirizzi IP e viceversa. 7 Dynamic Host Configuration Protocol: è un protocollo di rete di livello applicativo che permette ai dispositivi o terminali di una certa rete locale di ricevere dinamicamente, ad ogni richiesta di accesso ad una rete IP, la configurazione IP necessaria per stabilire una connessione. 8 Internet Protocol (IP): è il protocollo di rete su cui si basa la rete Internet.
38 3.1 Access control 23 Virtualizzazione Le Virtual Machine hanno confini virtuali rispetto ai server fisici, ovvero non vi è isolamento fisico tra le risorse della VM, infatti esse coesistono sullo stesso server fisico, usufruiscono della stessa CPU, memoria, I/O, scheda di rete e altri componenti. La responsabilità dei confini VM è data al Cloud provider, mentre quella inerente all Hypervisor, ovvero il principale controller di ogni accesso alla VM, è nelle mani del fornitore di servizi Cloud. Hypervisor o Virtual Machine Monitor è il software che realizza la condivisione stessa. Esso opera in modo trasparente senza pesare alla propria attività sul funzionamento dei sistemi operativi. L adozione di questo tipo di tecnologia porta sì a molti progressi, ma allo stesso tempo la virtualizzazione crea un ambiente di sicurezza, senza dubbio, più complesso e rischioso. Alcune vulnerabilità e questioni di sicurezza: Remote management vulnerabilities: alcuni Hypervisor utilizzano, a loro volta, sistemi per gestire le VM. Questo comporta nuove vulnerabilità, tra cui cross-site scripting 9, SQL injection 10 ecc. Virtual machine based Rootkit: il concetto di rootkit è apparso nel mondo UNIX. Un rootkit è un insieme di strumenti (programmi) che consentono l accesso a livello di amministratore a un computer o a una rete di computer. Se un rootkit compromette l hypervisor, è possibile ottenere il controllo dell intera macchina fisica. Rootkit tipici: Blue Pill e SubVirt. 9 Cross-site scripting: permette ad un hacker di inserire od eseguire codice lato server al fine di attuare un insieme variegato di attacchi quali ad esempio: raccolta, manipolazione e reindirizzamento di informazioni riservate, visualizzazione e modifica di dati presenti sui server, alterazione del comportamento dinamico delle pagine web ecc. 10 SQL injection: questa tecnica sfrutta l inefficienza dei controlli sui dati ricevuti in input ed inserisce codice maligno all interno di una query SQL.
39 24 3. Sicurezza e rischi nel Cloud Computing Revert to snapshots problem: è un meccanismo per consentire all amministratore di fare uno snapshot della macchina in un certo punto e ripristinare in caso di necessità. Lo snapshot porta anche alcuni problemi di sicurezza, riguardanti certe politiche, come riattivazioni degli account precedentemente disabilitati e aggiornamento password.
40 3.1 Access control 25 Virtual Network L interconnettività è uno dei maggiori problemi di sicurezza del Cloud computing. Uno dei modi migliori per evitare questo tipo di problema è isolare ogni VM, utilizzando un collegamento ad un canale fisico dedicato per ogni host-vm. Tuttavia, le modalità di configurazione della rete virtuale per collegare le VM, comuni per la maggior parte degli hypervisor, sono basate nell uso di bridge e route. In queste modalità, le prestazioni di comunicazione tra le VM risultano non compatibili quando le VM sono in esecuzione sullo stesso host. Come risultato, l isolamento rischia di essere attaccato facilmente. Alcune vulnerabilità nella rete virtuale: Sniffing virtual network: il bridge 11 gioca un ruolo di hub 12 virtuale. Tutte le VM condividono l hub virtuale per comunicare in rete, dove una VM è in grado di intercettare pacchetti dati durante il trasferimento. Spoofing virtual network: il route svolge un ruolo di switch 13 virtuale. Quest ultimo utilizza un interfaccia virtuale dedicata per collegare ciascuna VM. 11 È un dispositivo di rete che si colloca al livello datalink del modello ISO/OSI e che traduce da un mezzo fisico ad un altro all interno di una stessa rete locale. 12 Rappresenta un concentratore, un dispositivo di rete che funge da nodo di smistamento di una rete di comunicazione dati. 13 È un dispositivo di rete o nodo interno di rete che si occupa di commutazione a livello 2, cioè livello datalink del modello ISO/OSI di indirizzamento e instradamento all interno di reti locali attraverso indirizzi MAC, inoltrando selettivamente i frame ricevuti verso una porta di uscita.
41 26 3. Sicurezza e rischi nel Cloud Computing In questo modo, una VM può utilizzare un Address Resolution Protocol (ARP) 14, reindirizzando i pacchetti e quindi essere in grado di intercettare i pacchetti che vanno a certe VM, provenienti da altre macchine virtuali. Problemi PaaS Il PaaS si basa essenzialmente, sulla SOA 15, ovvero Service Oriented Architecture. Questo porta a ereditare tutti i problemi inerenti all ambito SOA, come gli attacchi DOS 16, Main in the middle attack 17, attacchi XML, ecc. Questi problemi di sicurezza sono di responsabilità divisa tra i Cloud provider, i consumatori e i fornitori di servizi Cloud. Il PaaS fornisce delle API che dovrebbero essere in grado di garantire sicurezza, per esempio la OAuth, per gestire l autenticazione e l autorizzazione. 14 È un protocollo di rete appartenente alla suite del protocollo internet (IP) versione 4, il cui compito è fornire la mappatura tra l indirizzo IP a 32bit (4byte) e l indirizzo MAC (MAC address) corrispondente di un terminale in una rete locale ethernet. 15 Indica generalmente un architettura software adatta a supportare l uso di servizi Web per garantire l interoperabilità tra diversi sistemi così da consentire l utilizzo delle singole applicazioni come componenti del processo di business e soddisfare le richieste degli utenti in modo integrato e trasparente. 16 DOS: Denial of Service. Si tratta di un attacco informatico che tenta di portare il funzionamento di un sistema informatico che fornisce un servizio al limite delle prestazioni, fino a renderlo non più in grado di erogare servizi. 17 MITM: è un tipo di attacco nel quale l attaccante è in grado di leggere, inserire o modificare a piacere, messaggi tra due parti senza che nessuna delle due sia in grado di sapere se il collegamento che li unisce reciprocamente sia stato effettivamente compromesso da una terza parte
42 3.2 Modelli di deployment 27 Problemi SaaS Nel modello SaaS, la responsabilità dell esecuzione e del mantenimento della sicurezza è condivisa tra il Cloud provider e il fornitore di servizi. Il SaaS eredita i problemi discendenti dal PaaS e IaaS, in quanto si appoggia a questi, comprendendo sia la sicurezza sui dati sia quella di rete. Si deve tener presente anche di vulnerability scanning 18. Nel SaaS si riscontra anche il multi-tenancy, il quale porta problematiche causate dalla condivisione di risorse come l hardware e le applicazioni stesse, rischiando la perdita di informazioni. 3.2 Modelli di deployment In relazione ai modelli di deployment, descritti nel secondo capitolo, si ha una differenziazione della sicurezza nelle varie tipologie di Cloud. Nel modello Public Cloud non si ha la possibilità di variare le clausole contrattuali standard, pertanto la verifica del rispetto delle misure minime previste dalle normative privacy deve essere eseguita ex ante alla stipula del contratto. Nel Community Cloud, le misure minime di sicurezza sono stabilite tra le organizzazioni che condividono lo stesso spazio di infrastruttura Cloud. Pertanto, è desumibile che i vari attori facciano riferimento a standard comunemente accettati. Invece, nel Private Cloud, il client è il principale responsabile e ha il ruolo decisivo nell attuazione delle misure minime da parte del fornitore del servizio. 18 Uno scanner è un programma progettato per ricercare e mappare le debolezze di un applicazione, di un computer o di una rete. Tipicamente lo scanner inizialmente cerca indirizzi attivi, porte aperte, sistemi operativi ed ogni applicazione in esecuzione. In questo processo lo scanner può tentare di violare.
43 28 3. Sicurezza e rischi nel Cloud Computing Infine, il modello Hybrid Cloud, essendo una combinazione di modelli cloud, richiede maggior controllo nell attuazione di misure minime di sicurezza. È opportuno che tali misure siano condivise su tutti i servizi Cloud utilizzati Tecniche di protezione L utilizzo di servizi/infrastrutture cloud comporta, inevitabilmente, il mancato controllo sui propri dati e su alcuni processi di gestione. La presenza di un Governance può portare ad una gestione sia a livello organizzativo, sia ad una diminuzione di rischi di tipo legali e tecnologici. È sufficiente, a volte, definire ruoli e responsabilità, in modo che ciascun incaricato possa soddisfare i requisiti richiesti da un Governance. Per esempio, un caso in cui si potrebbero creare problemi è quando un provider si appoggia, a sua volta, ad eventuali terze parti. In questo ambito, se la gestione delle competenze non è ben organizzata, si può incorrere in una serie di ulteriori problemi. Un altro punto su cui si pone l attenzione è soprattutto la gestione delle utenze e dei relativi profili di accesso. Il provider ha in possesso la totale responsabilità sul cosidetto cloud admin, che risulta essere una potenziale minaccia, in quanto in grado di procurare danni ai dati/servizi offerti al cliente. Tuttavia, non è un compito facile far rientrare questa gestione all interno delle normative tassative a cui devono sottostare gli amministratori di sistema. Per questo motivo, risulta importante e fondamentale il contratto che si viene a stipulare tra provider e consumer. Questo porta a garantire una sicurezza nell erogazione del servizio, tenendo in considerazione l evoluzione delle modalità in relazioni a quella della normativa.
44 3.2 Modelli di deployment Controllo e audit Con audit si intende il monitoraggio su tutte le attività con la possibilità per le parti di condurre un attività di controllo su certi oggetti e componenti. L osservazione del delegato è un aspetto fondamentale del processo di delega, a cui è riconducibile la nomina a responsabile dei trattamenti del fornitore di servizi Cloud. Questo tipo di controllo può assicurare di ottenere un contratto affidabile con il fornitore di servizio. L organizzazione che gestisce le attività di audit del servizio di Cloud computing deve procedere anche alla stipula del contratto di fornitura. L adeguamento dei processi toccati dall utilizzo di soluzioni Cloud deve portare ad una revisione delle politiche e delle procedure aziendali. Più difficoltoso è l audit dell infrastruttura tecnologica e dei processi interni del fornitore. In questo caso si ha il vero e proprio problema di controllo di quanto dichiarato e garantito a livello contrattuale. Gli stessi fornitori iniziano ad adottare strumenti che permettono di offrire garanzie ai singoli clienti, senza essere costretti ad offrire la possibilità di sottoporre ad audit sistemi e processi Crittografia In un ambiente Cloud, i dati sono condivisi con diversi client in rete, quindi si devono adottare opportune strategie per renderli nascosti. La crittografia è uno strumento che offre proprio i vantaggi di affidamento minimo per il fornitore di servizi Cloud. Si parla di: Encrypting data in transit over networks: vi è la necessità di crittografare le credenziali multi-uso, come ad esempio numeri di carte di credito, password e le chiavi private, in transito su Internet. Anche se le reti dei provider possono essere più sicure di Internet aperto, sono per la loro architettura fatte di tante componenti diverse e organizzazioni diverse che fanno parte del Cloud.
45 30 3. Sicurezza e rischi nel Cloud Computing Pertanto, è importante proteggere le informazioni sensibili in transito anche all interno della rete del provider. Di solito, questo può essere implementato con la stessa facilità in modalità SaaS, PaaS, IaaS. Encrypting data at rest: si intende la crittografia dei dati su disco o in un database di produzione in tempo reale, come si può proteggere contro un fornitore di servizi Cloud dannoso o maligno.
46 Capitolo 4 Aspetti e problemi giuridici Il Cloud computing crea nuove dinamiche nel rapporto tra un organizzazione e le relative informazioni, comportando la presenza di un terzo: il Cloud provider. Questo porta a nuove sfide per la comprensione di come le leggi si applicano a una vasta gamma di scenari di gestione delle informazioni. Un analisi completa di questioni giuridiche, riguardo il Cloud computing, richiede la considerazione di dimensioni funzionali, giurisdizionali, e contrattuali. La dimensione funzionale consiste nel determinare quali funzioni e servizi del Cloud computing hanno implicazioni legali per i partecipanti e le parti interessate; la dimensione giurisdizionale riguarda il modo in cui i governi amministrano certe disposizioni legislative e regolamenti che impattano sui servizi di Cloud computing, sulle parti interessate dei dati coinvolti: la dimensione contrattuale coinvolge le strutture contrattuali, i termini, le condizioni e i meccanismi di applicazione attraverso i quali le parti interessate, in ambienti Cloud, possono affrontare e gestire gli aspetti legali e di sicurezza. 31
47 32 4. Aspetti e problemi giuridici Il Cloud computing, quindi, porta ad un potenziale rischio giuridico elevato, creato dalla natura distribuita della nube, rispetto alle tradizionali infrastrutture interne o di outsourcing. 4.1 Problematiche tra cliente e fornitore di servizi I rischi da considerare nell adottare il Cloud computing non riguardano solo la sicurezza dei dati o le tematiche affrontate nei paragrafi precedenti, ma soprattutto sono da tenere presenti obblighi di conformità a normative o a standard industriali a cui l azienda utente è sottoposta, in virtù del paese di appartenenza. Risulta, tuttavia, di fondamentale importanza, la stipulazione e la gestione del contratto tra il cliente e il fornitore di servizi, specificando sia i ruoli distinti, sia le finalità e le modalità essenziali. I principali soggetti coinvolti in un servizio Cloud computing sono, principalmente, il fornitore (cloud provider) da una parte, e il cliente (utente) dall altra. In certe situazioni, essi sono entrambi titolari, ovvero coloro che hanno totale autonomia nel trattamento. Ciò accade quando c è un certo tipo di libertà decisionale nel definire i caratteri essenziali del trattamento e si avrà un insieme di informazioni, scambiato fra entrambi, che verrà considerato fra autonomi titolari del trattamento. In altri casi, si può avere la situazione in cui si hanno un titolare e un responsabile, rispettivamente, il cliente e il fornitore. Lo scambio di dati può essere considerato come un flusso di informazioni interno alle modalità del contratto. Il contratto si basa su accordi specifici e non stabiliti unilateralmente, concedendo al cliente maggiori poteri, ottenendo quindi un proprio controllo sulla gestione dei dati. Tuttavia, il cliente acquisisce la responsabilità degli aspetti organizzativogestionali come, per esempio, proporre e adottare delle misure di sicurezza
48 4.1 Problematiche tra cliente e fornitore di servizi 33 logiche (Iaas) o controllare l applicazione delle misure di sicurezza fisiche da parte del fornitore (responsabile) (SaaS, PaaS), di cui servirebbe accertare sempre gli aspetti di affidabilità e competenza. Le maggiori problematiche avvengono quando il fornitore di servizi si rivolge ad un terzo soggetto esterno, il quale a sua volta dovrebbe essere sotto il controllo del cliente, al pari del fornitore stesso. Appare, quindi, scontato e necessario procedere ad una corretta individuazione del titolare e del responsabile, per non incorrere in rilevanti conseguenze in tema di determinazione delle responsabilità giuridiche e delle condizioni di sicurezza del trattamento. Tutto ciò per evitare che un azienda, per esempio, si trovi ad utilizzare inconsapevolmente servizi Cloud privi di autotutela. Il cliente deve vincolare contrattualmente il fornitore di servizi, nominato come responsabile del trattamento dati, nel caso in cui egli decida di affidare a terzi una parte o la completa fornitura del servizio, comprendendo anche i trattamenti di dati personali. Questo iter prevede passaggi intermedi: il fornitore di servizi in cloud deve far presente, al cliente titolare, i terzi fornitori futuri e dove saranno effettuati i trattamenti di dati; i terzi fornitori scelti devono accettare di essere i responsabili del trattamento dei dati seguendo la normativa prevista; i terzi fornitori devono avere nei confronti del cliente titolare lo stesso comportamento che il primo fornitore teneva nei confronti del cliente.
49 34 4. Aspetti e problemi giuridici Figura 4.1: Sicurezza 4.2 Trasferimento dati Attenendosi al Codice della Privacy, riguardo il trasferimento dei dati personali all estero, ha un aspetto rilevante la localizzazione dei luoghi del trattamento dei dati da parte del fornitore, quando esso si appoggia a luoghi al di fuori dell Unione europea o a uno stato non membro, che non garantisca un servizio adeguato di sicurezza e protezione. Il Codice della Privacy vieta a tutti gli effetti il trasferimento dei dati al di fuori dell Unione Europea, a meno di precise disposizioni. Infatti, uno dei problemi più evidenti e visibile si riferisce alla tutela contro gli abusi dei dati personali. Nonostante l Europa abbia messo in atto una Direttiva di protezione dei dati 1, ci sono diverse difficoltà nell applicazione di tali regole in un ambiente come quello del Cloud computing. La direttiva sulla protezione dei dati ha fornito un certo grado di armonia nell Unione europea; sussistono però differenze tra le legislazioni nazionali, per esempio, in relazione alle formalità 1 95/46/CE: The Data Protection Directive is a European Union directive which regulates the processing of personal data within the European Union. It is an important component of EU privacy and human rights law. On 25 January 2012, the European Commission unveiled a draft European Data Protection Regulation that will supersede the Data Protection Directive.
50 4.2 Trasferimento dati 35 da compilare a cura del titolare o specifici regimi di protezione dei dati (dati sanitari, dati finanziari, ecc.). Alcuni aspetti della normativa (in particolare il rigido controllo sulla posizione geografica del trattamento dei dati, come un fattore importante nel determinare le norme applicabili) porta a notevoli difficoltà nella pratica. Tuttavia, è chiaro che questo non sarà sufficiente ad affrontare tutte le problematiche in questo settore, poichè le norme stabilite dalla Direttiva europea, ovviamente, si applicano solo negli Stati membri, e in un paese non europeo non si è in grado di risolvere i conflitti di legge. Nell art 43 co.1 lett. a,b D.leg. 196/03 si legge che: Il trasferimento anche temporaneo fuori del territorio dello Stato, con qualsiasi forma o mezzo, di dati personali oggetto di trattamento, se diretto verso un Paese non appartenente all Unione europea è consentito quando: l interessato ha manifestato il proprio consenso espresso o, se si tratta di dati sensibili, in forma scritta; è necessario per l esecuzione di obblighi derivanti da un contratto del quale è parte l interessato o per adempiere, prima della conclusione del contratto, a specifiche richieste dell interessato, ovvero per la conclusione o per l esecuzione di un contratto stipulato a favore dell interessato La gestione di alcuni server affidata a fornitori in luoghi esterni ai propri, particolarmente in quasi tutti i modelli di servizio Cloud (IaaS, SaaS e PaaS). Inoltre, questa tipologia si riscontra, specialmente, nel Public Cloud, dove l infrastruttura è di proprietà di un fornitore che mette i propri sistemi a disposizione di terzi, tramite la rete. Anche nel Private Cloud, ove l infrastruttura informatica è per lo più dedicata alle esigenze di una singola organizzazione, il problema sorge quando la gestione è affidata ad un terzo, che ospita il server in una sede esterna alla medesima organizzazione. In questi casi, per prevenire consistenti problemi, è compito del cliente accertarsi, in relazione al servizio offerto, dove il fornitore ha collocato, fi-
51 36 4. Aspetti e problemi giuridici sicamente, i dati personali, e se questi rimarranno sotto la gestione dello stesso o se verranno trasferiti in terze parti. Il Cloud deve sempre risiedere in località precise, conosciute dal cliente, rispettando il Codice della Privacy. Per adempiere alle disposizioni in materia di trasferimento dei dati personali all estero, il cliente, accertandosi dove sia ubicato il server del fornitore, può assistere a determinate situazioni: il server del fornitore è situato nel territorio di uno Stato membro della UE o di uno Stato che garantisca un determinato livello di protezione dei dati personali: in questo caso il trasferimento dei dati verso questi Stati è considerato legale; il server del fornitore è situato in uno stato terzo, non giudicato sicuro dalla Commissione UE per garantire un efficiente livello di protezione dei dati: in questo particolare caso, tra il cliente e il fornitore devono essere vigenti clausole contrattuali approvate dalla Commissione UE relative al trasferimento extra UE; si considera il fornitore come società dello stesso cliente ed il server si trova in uno Stato non giudicato dalla Commissione UE idoneo nel garantire un buon livello di protezione dei dati personali e sono in vigore le BCR 2 : in tal caso, il trasferimento dei dati personali negli Stati extra UE dove operano le società è giudicato lecito. In pratica, l importanza di questo problema non dovrebbe essere sottovalutata, come la scelta di un sistema giuridico applicabile su base contrattuale è infatti diventata una pratica standard nei contratti di servizi della società dell informazione. 2 Binding corporate rules: norme vincolanti di impresa, per consentire a multinazionali, organizzazioni internazionali e gruppi di imprese di fare trasferimenti di dati personali attraverso le frontiere, in conformità con il diritto comunitario sulla protezione dei dati.
52 Capitolo 5 Service Level Agreement Il Cloud ha un architettura diversa in base ai servizi che offre. I dati sono memorizzati in una posizione centralizzata, chiamata data center, avente una grande dimensione di memorizzazione. Di conseguenza le informazioni risiedono, a sua volta, sul server. I clienti devono avere fiducia nel fornitore, per avere garantita la disponibilità e la sicurezza dei dati. ll Service Level Agreement (SLA) è l unico accordo legale tra il fornitore del servizio e il cliente. 5.1 Definizione di Service Questa è la parte più critica dell accordo tra il Serivce Provider (fornitore di servizi) e il Customer (cliente), ovvero dove vengono descritti i servizi e il modo in cui questi devono essere proposti. In particolare, include riferimenti alle operazioni del servizio, nonchè le informazioni necessarie per definire le garanzie di livello, nella parte successiva della SLA. Le informazioni relative al Service devono essere precise e contengono specifiche dettagliate di ciò che esattamente dovrà essere offerto al Customer. 37
53 38 5. Service Level Agreement 5.2 Definizione di Service Level Agreement (...) a formal negotiated agreement between two parties. It is a contract that exists between the Service Provider (SP) and the Customer. It is designed to create a common understanding about service quality, priorities, responsibilities, ecc. 1 Il Service Level Agreement (SLA) è un accordo, tra un Service Provider e un Customer, che descrive il servizio, gli obiettivi del livello di servizio e specifica le rispettive responsabilità degli attori. Questo è un elemento estremamente importante di documentazione per entrambe le parti. Inoltre, gli SLA descrivono gli IT Services, i relativi documenti Service Level Targets, specificando le responsabilità dell IT Service Provider e del Customer. I Service Level Agreement (SLA) sono sempre più comuni, come un modo per garantire la qualità del servizio, (QoS) 2 nell informazione, nella comunicazione e nel trasporto/logistica dei servizi, ma sono anche comunemente usati per impostare le condizioni commerciali e di business di una fornitura di servizi (ad es. nel settore delle telecomunicazioni). Essi non sostituiscono però i contratti formali, soggetti al controllo giurisdizionale, ma permettono comunque di ridurre il numero complessivo e il costo di tali contratti. Se usato correttamente dovrebbe: identificare e definire le esigenze del Customer; fornire un quadro di riferimento per la comprensione, semplificando questioni complesse; ridurre i conflitti tra le parti; 1 Service Level Agreement / Quality of Service Overview, TM Forum. [Online]. 2 È usato per indicare i parametri usati per caratterizzare la qualità del servizio offerto dalla rete (ad esempio perdita di pacchetti, ritardo), o gli strumenti o tecniche per ottenere una qualità di servizio desiderata
54 5.3 Caratteristiche principali SLA 39 dare la possibilità al Customer di ottenere quello che effettivamente pretende dal servizio. 5.3 Caratteristiche principali SLA Performance Management La natura dinamica del Cloud computing richiede un continuo monitoraggio dei requisiti per far rispettare gli SLA. I Customers potrebbero non fidarsi completamente delle misure prese da un fornitore di servizi, i quali potrebbero richiedere l intervento di un terzo, per avere una misurazione critica dei parametri di servizio. Non a caso uno SLA è un insieme di Service Level Objective che sono indicatori di performance. Un gruppo appropriato di servizi concreti/risorse può essere scelto in modo da garantire il rispetto degli SLA e soddisfare i consumatori. Service Level Objective: obiettivo di qualità di servizio che deve essere raggiunto; set di misure KPI 3, con soglie per decidere se l obiettivo è soddisfatto o meno. Quindi, è di fondamentale importanza, in un contratto, monitorare e misurare il livello di prestazioni del servizio. Essenzialmente, ogni servizio deve poter essere misurato ed i rispettivi risultati, analizzati e riportati. I parametri di riferimento, obiettivi e metriche che vengono utilizzati, devono essere specificati nel contratto stesso. Il livello di prestazioni di servizio deve essere rivisto regolarmente dalle due parti. 3 Un indicatore chiave di prestazione (Key Performance Indicators o KPI) è un indice che monitora l andamento di un processo aziendale.
55 40 5. Service Level Agreement Metrics I parametri della SLA sono specificati dalle metriche di sicurezza. Quest ultime sono le definizioni di valori di proprietà del servizio che sono misurate da un sistema che fornisce altri parametri e costanti. Le metriche sono lo strumento chiave per descrivere esattamente ciò che intendiamo per SLA Parameters specificando come misurare o calcolare i valori dei parametri. Le specifiche dei parametri del livello di servizio e le metriche rappresentano anche la comprensione comune delle parti Quality of Service Come accennato precedentemente, lo SLA si basa sul Quality of Service, che è definito come: the collective effect of service performances, which determine the degree of satisfaction of a user of the service. The quality of service is characterized by the combined aspects of service support performance, service operability performance, service integrity and other factors specific to each service. 4. Per ottenere una buona descrizione di SLA, consiste analizzare vari aspetti: descrizione della natura del servizio fornito: comprende il tipo del servizio, la descrizioni dei problemi tecnici connessi con il servizio, come ad esempio, la connettività di rete, il funzionamento e la manutenzione. Inoltre, anche le configurazioni del server e del client; il livello di risposta e affidabilità del servizio: include requisiti di disponibilità e in quanto tempo il servizio si esibisce in uno stato normale; servizio di segnalazione del problema: questo implica la notifica in caso di segnalazioni di errori, con annessi strumenti per la rapida risoluzione; tempi di risposta e risoluzioni problemi: questo definisce il tempo dopo il quale i problemi devono essere risolti; 4 International Telecommunications Union(ITU-T)
56 5.3 Caratteristiche principali SLA 41 monitoraggio e servizio di segnalazione: descrive come devono essere i livelli di qualità di monitoraggio e comunicazione, e con quale frequenza devono essere utilizzati; debiti sul fornitore del servizio, se le promesse non sono state soddisfatte: in tali casi, a un cliente di servizio gli può essere dato credito extra, come il cliente può decidere di risolvere il contratto, o chiedere un rimborso; condizioni supplementari: si tratta di condizioni in cui il contratto di servizio non è più valido. Questo può essere riscontrato, per esempio, nel caso di cause naturali (ad esempio inondazioni, incendi,...) Creazione di SLA La creazione di una SLA consiste in una serie di passaggi: 1. SLA development: sviluppo di modelli e diritti; 2. negotiation and Sales: negoziare ed eseguire i contratti; 3. implementation: generare, fornire il servizio e monitorarlo; 4. execution: funzionamento e mantenimento, monitorando le prestazioni; 5. assessment: valutare le prestazioni e considerare nuovi modelli. Figura 5.1: SLA life cycle
57 42 5. Service Level Agreement 5.4 Struttura SLA La struttura generale di tutti i diversi SLA rimane la stessa: le parti coinvolte (Provider e Customer); SLA parameters; le metriche sfruttate per computare gli SLA parameters; gli algoritmi inerenti; i Service Level Objectives (SLO) e le contro misure da intraprendere nel caso vengano violati gli SLOs 5.5 Approcci generali alla SLA Generalmente, per approcciarsi alla SLA, ci si rifà a tre aspetti principali: Insurance, Provisioning, Adaptive. Il primo, Insurance, è considerato il più importante, in quanto individua e monitora quelli che sono gli obiettivi del servizio offerto (es: performance, disponibilità, tempi di risposta). Inoltre, rilascia una relazione SLA, ovvero vengono inclusi incontri periodici con i contraenti del contratto, per discutere dello stato di conformità degli SLA. Il secondo aspetto, Provisioning, utilizza tecniche di configurazione per supportare gli SLA all interno della rete. In particolare individua gli obiettivi del servizio da fornire a ciascun cliente, determina la configurazione del sistema da utilizzare per ciascuno dei clienti. Per ultimo, l Adaptive, aggiunge un altro aspetto che si adatta al Provisioning: in aggiunta rispetto agli altri punti, controlla che se il monitoraggio avvisi di una possibile violazione degli obiettivi, riadatta la configurazione del cliente per garantire al meglio gli obiettivi del servizio.
58 5.6 SLA: lato client e lato provider SLA: lato client e lato provider Lato client L obiettivo principale dei fornitori di SaaS è quello di minimizzare i costi e di massimizzare il livello di soddisfazione del cliente. Quest ultima dipende in che misura è soddisfatto lo SLA. Quando un client fa una richiesta a livello applicativo, questa viene inviata al provider SaaS con vincoli di QoS, come ad esempio: deadline: tempo massimo che l utilizzatore vorrebbe attendere; budget: quanto un utente è disposto a pagare per ottenere i servizi richiesti; penalty rate ratioe: si intende un risarcimento dei consumatori se il provider SaaS non rispetta la scadenza; input file size: dimensione dei file in input forniti dagli utenti; request length: quante istruzioni devono essere eseguite per rispondere alla richiesta; Lato provider SaaS provider Un provider SaaS utilizza risorse da fornitori IaaS e software leasing come servizi per utenti. È importante stabilire due rapporti nello SLA, perchè lo SLA con l utente può aiutare il provider SaaS, per migliorare il livello di soddisfazione dei cliente, guadagnando la fiducia degli utenti con la qualità del servizio; lo SLA con i fornitori di risorse, può servire per soddisfare il servizio. Se una parte del contratto viola i termini, l inadempiente deve pagare la sanzione in base alle clausole definite nella SLA.
59 44 5. Service Level Agreement IaaS provider Un provider IaaS, offre VM fornitori ai SaaS provider ed è responsabile del funzionamento delle VM sulle proprie risorse fisiche. SLA provider comprende le seguenti caratteristiche: Service Initiation Time: quanto tempo occorre per installare un servizio; Price: quanto costa ad un SaaS provider usufruire di risorse del IaaS provider; Input Data Transfer Price: quanto costa ad un SaaS provider trasferire dati da risorse locali a risorse virtuali (VM); Output Data Transfer Price: quanto costa ad un SaaS provider trasferire dati da risorse virtuali a risorse locali; Processing Speed: velocità di elaborazione delle risorse; Data Transfer Speed: velocità di trasferimento dati, dipendente soprattutto dalla velocità di rete;
60 5.7 Problematiche SLA Problematiche SLA Problem Management Lo scopo della gestione dei problemi è quello di minimizzare l impatto negativo con i rischi e i problemi. Questo specifica che di solito ci deve essere un adeguato processo per gestire e risolvere gli imprevisti e che ci deve essere anche l attività di prevenzione Customer Duties and Responsibilities È importante che il Customer capisca che possiede anche la responsabilità di sostenere il processo di erogazione del servizio. In genere, il Customer deve provvedere all organizzazione di accesso, alle strutture e alle risorse per i dipendenti del fornitore che ne hanno bisogno Monitoring di SLA Per avere un controllo, continuamente, sui valori della qualità del servizio, si necessità di diversi approcci di monitoraggio. Esistono due principali tipologie di monitoring: Server-side, Client-side. Da un lato, l approccio Server-side è più legato all implementazione, che non sempre può essere accessibile, mentre quando si parla a livello di Clientside, rimane più indipendente dall implementazione del servizio, ma i valori potrebbero non sempre essere aggiornati. Sia a livello di Server-side sia Client-side, è possibile avere il controllo di misurazioni come latenza, throughput, tasso di trasferimento, tempo di risposta dei messaggi, disponibilità e affidiabilità. Invece, per misurazioni come scalabilità, robustezza, capacità, gestione delle eccezioni e stabilità vengono ottenute solo dal lato Server-side.
61 46 5. Service Level Agreement 5.8 Sicurezza SLA Security Service Level Agreement (Sec-SLA) La sicurezza è un aspetto particolarmente critico di ogni SLA. Il Customer deve fornire un accesso controllato, fisico e logico, alle proprie informazioni. Allo stesso modo, il fornitore deve rispettare e attenersi alle politiche di sicurezza del Customer e delle varie procedure. Allora sorge subito una domanda: come viene accuratamente delineata la sicurezza in questo contesto?. La risposta a questa domanda la si può vedere in tre punti principali: Policy analysis: tutti i dati possibili possono essere valutati in questa fase, per creare una Sec-SLA. Viene analizzata la documentazione disponibile nel campo in cui l organizzazione ha le sue attività, come i contratti dei clienti, i regolamenti nazionali, le politiche interne e così via; Architecture analysis: l obiettivo è quello di analizzare l infrastruttura del cliente e di trovare i requisiti che potrebbero essere risolti direttamente in elementi come i server web e firewall; Interviews: si raccolgono informazioni sui problemi di sicurezza dal punto di vista dell utente Cos è il Sec-SLA Security Service Level Agreements (Sec-SLA), non è una nuova tecnica, ma più come uno nuovo design per gli accordi di livello di servizio. Sec-SLA è una specifica SLA che offre metriche relative alla sicurezza, invece dei tradizionali aspetti riguardo le telecomunicazioni, come per esempio, throughput, ritardi, pacchetti persi.
62 5.8 Sicurezza SLA 47 I requisiti di sicurezza a livello di servizio o richieste vengono convertiti in una serie di meccanismi, tra cui la crittografia, i dati packet filtering 5, la ridondanza di hardware e software, ecc. Oltre all introduzione di un Sec-SLA, di rilevante importanza è il monitoraggio dello stesso. Quest ultimo è anche molto complesso poichè l approccio che l agente-manager ha per altri tipi di SLA, non è adattabile ad ogni caratteristica di sicurezza. Figura 5.2: Sec-SLA Conventional SLA La principale caratteristica di un Sec-SLA è quella di cercare di formalizzare metriche di sicurezza. L obiettivo è quello di creare metriche il più possibili quantificabili e misurabili. In molti casi si è cercato di attenersi, il più possibile, a norme internazionali relative a condizioni di sicurezza dell informazione. Alcuni esempi di metriche possono essere: Password management: password; ogni quanto dovrebbe essere cambiata una Backup policies: ogni quanto viene effettuato un backup, e le modalità con cui viene realizzato; Repair time: quanto tempo serve per i team IT per mettere un sistema in stato di failure. 5 È il più semplice firewall, che si limita a valutare gli header di ciascun pacchetto, decidendo quali far passare e quali no sulla base delle regole configurate.
63 48 5. Service Level Agreement 5.9 Linguaggio di programmazione per SLA Appropriati linguaggi formali basati su XML sono stati progettati per consentire la definizione di SLA in tutti i suoi elementi. In particolare si ha il documento XML più XML schema-based. Il primo include le informazioni del messaggio, mentre lo schema XML può essere utilizzato per definire la struttura dei messaggi e i tipi di dati secondo lo SLA. Così siamo in grado di utilizzare lo schema XML per convalidare i documenti XML e renderli conformi alle specifiche dello schema. Il primo obiettivo di un linguaggio che definisce uno SLA è di fornire la capacità di esprimere, con il massimo grado di precisione, le caratteristiche qualitative e quantitative di un servizio. Grazie a questo tipo di strumento, le parti sono in grado di poter accordarsi in modo preciso e dettagliato sul livello di un particolare servizio. Altri risultati rilevanti sono la possibilità di far riferimento ad uno standard, che tutti sono in grado di comprendere ed utilizzare, realizzare in maniera semplice il confronto fra le diverse offerte, ragionare sulle proposte del servizio, in modo da capire cosa si possa offrire e ricevere ed infine controllare facilmente le garanzie della qualità del servizio. Alcuni principali requisiti: Parametrizzazione: ogni SLA include un serie di parametri, che sono i principali elementi di descrizione di un servizio; Composizione: i fornitori del servizio devono essere in grado di comporre SLA che possano offrire nuovi servizi ai clienti, cercando anche di offrire un servizio di cooperazione tra le diverse entità del dominio; Validazione: uno SLA, deve essere convalidata dalle parti contraenti, prima di essere iniziata;
64 5.10 XML e SLA 49 Monitoraggio: le rispettive parti dovrebbero, costantemente, controllare che i livelli del servizio stabiliti, vengano correttamente forniti e se sono stati soddisfatti dai propri clienti XML e SLA Di seguito, verrà descritta la struttura generale dei messaggi di SLA per i diversi servizi internet. Nella maggior parte dei casi, SLA si compone di tre parti: una descrizione delle parti e dei loro ruoli (fornitore, cliente, terzi); una descrizione dettagliata dei parametri del livello di servizio; una rappresentazione degli obblighi delle parti.
65 50 5. Service Level Agreement Rappresentazione delle parti in XML Questa implementazione propone le verie informazioni sul fornitore di servizi, il cliente e dei terzi. I terzi, nominati come Supporting Parties, sono coinvolti nella misurazione dei parametri del servizio, controllano le garanzie rilasciate e la gestione delle procedure di correzione, da attuare in caso di guasto. <xsd:complextype name=partiestype > <xsd:sequence> <xsd:element name= ServiceProvider type= sla:partytype /> <xsd:element name= ServiceConsumer type= sla:partytype <xsd:element name= SupportingParty type= sla:partytype minoccurs= 0 minoccurs= 0 maxoccurs= unbounded /> </xsd:sequence> </xsd:complextype> </xsd:complextype> <xsd:complextype nme= PartyType > <xsd:sequence> <xsd:element name= Contact type= sla:contactinfonnationtype /> </xsd:sequence> <xsd:attribute name= name type= xsd:string /> </xsd:complextype>
66 5.10 XML e SLA Descrizione del servizio in XML In questa sezione, si mettono in evidenza per quale servizio vengono usati i parametri, quali e come sono usati. <xsd:complextypename= Servicetype > <xsd:complexcontent> <xsd:sequence> <xsd:element name= ServType type= xsd:string maxoccurs= 1 /> <xsd:element name= ServiceLevel type= xsd:string maxoccurs= 1 /> <xsd: element name= ServiceMetric type= sla:metrictype maxoccurs= unbounded /> <xsd:sequence> <xsd:complexcontent> <xsd:complextype>
67 52 5. Service Level Agreement Descrizione metrica del servizio in XML La descrizione della metrica implica un analisi dei parametri usati, per valutare il livello del servizio. <xsd:complextypename= ServiceMetric > <xsd:complexcontent> <xsd:sequence> <xsd: element name= Expression type= sla:logicexpresstype maxoccurs= unbounded /> <xsd:element name= MetricGrade type= xsd:integer MaxOccurs= unbounded /> </xsd:sequence> <xsd:complexcontent> <xsd:complextype> <ServiceDefinition name= Downloadservice > <ServiceDescription name= Download > <ServType> Download</ServType> <ServiceLevel> bronze ServiceLevel> </ServiceDescription> <ServiceMetric> <Expression> <Predicate xsi: type= sla:less > <SLAParameter>AverageResponseTime </SLAParameter> <Value>5</Value> <Predicate> </Expression> <MetricGrade> 4 <MetricGrade> </ServiceMetric> <ServiceMetric>
68 5.10 XML e SLA Descrizione obblighi in XML Gli obblighi rappresentano i rispettivi requisiti che le parti si impegnano a rispettare. <xsd:complextype name= ServiceLevelObjectiveType > <xsd:sequence> <xsd:element name= Obliged type= xsd:string /> <xsd:element name= validity type= sla:periodtype maxoccurs= unbounded /> <xsd:element name= action type= sla:actiontype /> </xsd:sequence> </xsd:complextype> Il periodo di validità è specificato, indica gli intervalli di tempo per il quale un parametro SLA dato è valido. Le azioni vengono eseguite ogni volta che una violazione di un obiettivo di livello di servizio si è verificato Descrizione azione in XML <xsd: ComplexType name= actiontype > <xsd:sequence> <xsd:element name= Expression type= sla:logicexpressiontype /> <xsd:element ref= sla:qualifedaction maxoccurs= unbounded /> </xsd:sequence> <xsd:attribute name= name type= xsd.string /> </xsd:complextype> L espressione LogicExpressionType definisce un requisito dell azione. Il QualifiedAction contiene una definizione delle azioni da eseguire.
69 54 5. Service Level Agreement 5.11 SLA per il Cloud Computing La tendenza del Cloud Computing è vista come un estensione del paradigma SOA. Si cerca di tutelare, nel migliore dei modi, il processo di gestione dell accordo provider-consumer. Con Web Service Level Agreement si propone un architettura per la gestione dei consumatori Cloud, fornendo SLA Web Service Level Agreement Diverse specifiche per definire SLA sono state proposte per i servizi web. Il linguaggio Web Service Level Agreement introduce un meccanismo per aiutare gli utenti di servizi web a configurare e controllare le loro risorse, al fine di soddisfare il livello di servizio. Inoltre, gli utenti sono in grado di monitorare i parametri di SLA durante la fase di esecuzione e riferiscono notifiche in caso ci siano violazioni. WSLA, è stato sviluppato per descrivere i servizi in tre categorie: 1. parti: in questa sezione, si hanno informazioni sui consumatori dei servizi, sui fornitori di servizi e su terzi; 2. parametri SLA: qui vengono descritti i principali parametri che sono suddivisi in due tipi di metriche; (a) metriche delle risorse: le risorse vengono recuperate direttamente dal provider e sono utilizzate così come sono, senza ulteriori elaborazioni; (b) metriche composte: questa metrica viene utilizzata per rappresentare il calcolo della combinazione di informazioni su un fornitore, una combinazione di metriche di risorse diverse, calcolate secondo un algoritmo specifico;
70 5.11 SLA per il Cloud Computing Service Level Objective (SLO): in questo ambito, vengono messi in evidenza gli obblighi e le azioni che vi sono tra il fornitore di servizi e il cliente, dei vari servizi web. Inoltre sono definiti i concetti di gestione del servizio, costi e altri obiettivi di servizi. Essi possono essere considerati come espressioni formali, della struttura conosciuta if...then: nell if si ha la condizione, mentre nella conseguenza (then) si ha l azione. WSLA garantisce un livello di monitoraggio, ma non definisce in modo chiaro quale livello di servizio può essere considerato di violazione. Figura 5.3: Main concepts of WSLA
71 56 5. Service Level Agreement Servizi WSLA La nube è intrinsecamente dinamica e l utilizzo delle risorse cambia continuamente. Quindi si adatta perfettamente con SLA, che hanno bisogno di abbracciare questa natura dinamica. Inoltre, a causa delle crescenti preoccupazioni di privacy e sicurezza dei dati, i consumatori potrebbero divulgare alcuni dettagli al Cloud provider. Una volta che il documento SLA è stabilito, deve essere distribuito. La distribuzione SLA è definita come il processo di convalida per le parti coinvolte. Descriviamo tre servizi comuni WSLA, e alcuni dei loro adeguamenti richiesti nel contesto Cloud. 1. Measurement Services: questi servizi sono responsabili di misurare dei parametri a runtime relativi alle risorse del Cloud provider. Come discusso in precedenza, i parametri di servizio, come il tempo di risposta e il throughput vengono costantemente aggiornati a causa della variabilità della richiesta di servizio da parte del consumatore. Nel contesto del Cloud Computing, tuttavia, i parametri di utilizzo e di costo sono dinamici. Ciò è dovuto al pay-as-you-go, che caratterizza la natura e l elasticità del Cloud. Si possono identificare servizi aggiuntivi al Cloud Computing, come l utilizzo, il costo/prezzo dei dati importanti. 2. Condition Evaluation Service: questo servizio è responsabile di ottenere i risultati di altri servizi, riguardo la misurazione e la valutazione degli obiettivi di livello. Se ci sono violazioni del servizio di gestione verrà contattato il Management service.
72 5.11 SLA per il Cloud Computing 57 A causa della natura dinamica del Cloud, la valutazione delle condizioni deve essere eseguita più frequentemente, rispetto a quello che avviene in un contesto tradizionale. 3. Management Service: questo servizio è incaricato di controllare violazioni dei Service Level Objectives.
73 58 5. Service Level Agreement Figura 5.4: Architecture WSLA
74 5.12 Ajaxplorer Ajaxplorer Ajaxplorer è un file manager via web, open source, basato su un infrastruttura Cloud (IaaS), il quale dà la possibilità di condividere un gran numero di file, da singoli, organizzazioni, aziende. Ajaxplorer è realizzato maggiormente in PHP, per quanto riguarda il lato server, mentre JAVASCRIPT per gli aspetti inerenti al client-side. Inoltre, XML ha un ruolo importante per la gestione dei dati e metadata usati nel software, DOM e XPATH sono molto utilizzati sia su lato server sia su lato client per navigare attraverso i dati XML. Le principali funzionalità sono utilizzate come plug-in, in modo da permettere di introdurre funzionalità aggiuntive, overriding e creare dipendenze tra esse. Ajaxplorer sfrutta il collegamento con un CMS, Content Management System, che si appoggia a sua volta su un server già esistente, che permette, in questo specifico caso, la gestione del meccanismo di autenticazione dello user. Analizzando i sorgenti del software, si possono notare alcuni esempi di come vengono gestiti aspetti di sicurezza, a livello di implementazione Alcuni aspetti di sicurezza in Ajaxplorer Innanzitutto, si può capire come è gestita l autenticazione di uno user, nel momento in cui accede. Nei repository di Ajaxplorer si può notare come vengano gestite e nascoste le credenziali dei singoli user. Nei seguenti esempi implementativi, si hanno due funzioni di codifica e decodifica della password appartenente ad uno user, che una volta salvata nel server viene criptata o decripatata attraverso la funzione MCrypt.
75 60 5. Service Level Agreement class AJXP_Safe{ private static $istance; private $user; private $econdedpassword; private $secretkey; private $separator = SAFE_SEPARATOR ; private $forcesessioncredentials = false; public function construct(){ if(defined( AJXP_SAFE_SECRET_KEY )){ $this->secretkey = AJXP_SAFE_SECRET_KEY; }else{ $this->secretkey = \1CDAFxo p# ; } } Funzione che codifica la password. private function _encodepassword($password, $user){ if (function_exists( mcrypt_encrypt )){ $iv = mcrypt_create_iv(mcrypt_get_iv_size(mcrypt_rijndael_256, MCRYPT_MODE_ECB), MCRYPT_RAND); $password = base64_encode(mcrypt_encrypt(mcrypt_rijndael_256, md5($user.$this->secretkey), $password, MCRYPT_MODE_ECB, $iv)); } return $password; }
76 5.12 Ajaxplorer 61 Funzione che decodifica la password. private function _decodepassword($encoded, $user){ if (function_exists( mcrypt_decrypt )){ $iv = mcrypt_create_iv(mcrypt_get_iv_size(mcrypt_rijndael_256, MCRYPT_MODE_ECB), MCRYPT_RAND); $encoded = trim(mcrypt_decrypt(mcrypt_rijndael_256, md5($user.$this->secretkey), base64_decode($encoded), MCRYPT_MODE_ECB, $iv)); } return $encoded; } Repository: ajaxplorer-core core.classes.class.ajxpsafe.php Inoltre, Ajaxplorer sfrutta il cosiddetto WebDAV, Web-based Distributed Authoring and Versioning, il quale dà a disposizione un set di istruzioni che permettono di gestire file in un server remoto, accedendo da vari tipi di client. In questa sezione di implementazione, si può notare come vengano riutilizzate le funzioni precedentemente descritte, ma in aggiunta si ha il Token Pattern. Quest ultimo viene visto come possibile tecnica per cercare di evitare e tenere sotto controllo il CSRF, Cross-site request forgery. Assegnazione di un lock-token ad uno user. public function assignlock( $user, $locktoken ){ AJXP_Logger::debug("ASSIGNING DAVLOCK $user $locktoken"); if(!isset($this->tokens[$user])){ $this->tokens[$user] = array(); } $this->tokens[$user][$locktoken] = true; }
77 62 5. Service Level Agreement Si controlla che il lock sia stato assegnato o no allo user. public function ownslock( $user, $locktoken ){ AJXP_Logger::debug("TESTING DAVLOCK $user $locktoken"); return (isset($this->tokens[$user][$locktoken])); } Il lock viene rilasciato. In questo caso ownslock tornerà false, poichè il lock non è più in possesso dello user. public function releaselock( $user, $locktoken ){ AJXP_Logger::debug("RELEASING DAVLOCK $user $locktoken"); unset($this->tokens[$user][$locktoken]); } }...} Repository: ajaxplorer-core core.classes.class.ajxp_webdavauth.php Un altro esempio di uso di questo pattern lo si nota nella gestione dell autenticazione di un utente. static function generatesecuretoken(){ $_SESSION["SECURE_TOKEN"] = md5(time()); return $_SESSION["SECURE_TOKEN"]; } static function getsecuretoken(){ return (isset($_session["secure_token"])?$_session["secure_token"]:false); } static function checksecuretoken($token){ if(isset($_session["secure_token"]) && $_SESSION["SECURE_TOKEN"] == $token){ return true; }
78 5.12 Ajaxplorer 63 return false; } Repository: ajaxplorer-core core.classes.class.authservice.php Un modello di prevenzione ai problemi di sicurezza, è il controllo di minacce come Brute Force Attack, e di conseguenza l eliminazione di tentativi di Denial of Service, sfruttando come risoluzione primaria Captcha. Brute Force Attack consiste nel tentare di attaccare tutti i dati crittografati di un sistema. Captcha è un tipo di challenge-response usato per assicurarsi che il tentativo di accesso sia effettuato realmente da un essere umano. Nello specifico cerca di evitare l esecuzione di BOT, ovvero script creati per emulare il comportamento di una persona fisica nell esecuzione di determinati compiti. Infatti, quando un computer passa sotto il controllo di uno BOT può essere utilizzato per svolgere alcune prestazioni automatiche, tra queste Denial of Service. Come già mostrato nei capitoli precedenti, con il DoS si intende un attacco sulle prestazioni di un qualsiasi sistema web, fino a portarlo al limite delle prestazioni.
79 64 5. Service Level Agreement In questa funzione si controlla quante volte viene tentato l accesso da parte di un utente. static function checkbruteforcelogin(&$loginarray) { $serveraddress = ""; if(isset($_server[ REMOTE_ADDR ])){ $serveraddress = $_SERVER[ REMOTE_ADDR ]; }else{ $serveraddress = $_SERVER[ SERVER_ADDR ]; } $login = null; if(isset($loginarray[$serveraddress])){ $login = $loginarray[$serveraddress]; } if (is_array($login)){ $login["count"]++; } else $login = array("count"=>1, "time"=>time()); $loginarray[$serveraddress] = $login; if ($login["count"] > 3) { if(ajxp_server_debug){ AJXP_Logger::debug("DEBUG : IGNORING BRUTE FORCE ATTEMPTS!"); return true; } return FALSE; } return TRUE; } Repository: ajaxplorer-core core.classes.class.authservice.php
80 5.12 Ajaxplorer 65 In questa sezione, è messa in luce l implementazione di CaptchaProvider.php. Essa si appoggia alla classe securimage.php, che serve per la generazione e autenticazione di immagini. class CaptchaProvider{ public static function sendcaptcha(){ $libpath = AJXP_BIN_FOLDER."/securimage"; $img = new Securimage(); $img->wordlist_file = $libpath."/words/words.txt"; $img->gd_font_file = $libpath."/gdfonts/automatic.gdf"; $img->signature_font = $img->ttf_file = $libpath."/ahgbold.ttf"; $img->image_height = 80; $img->image_width = 170; $img->perturbation = 0.85; $img->image_bg_color = new Securimage_Color("#f6f6f6"); $img->multi_text_color = array(new Securimage_Color("#3399ff"), new Securimage_Color("#3300cc"), new Securimage_Color("#3333cc"), new Securimage_Color("#6666ff"), new Securimage_Color("#99cccc") ); $img->use_multi_text = true; $img->text_angle_minimum = -5; $img->text_angle_maximum = 5; $img->use_transparent_text = true; $img->text_transparency_percentage = 30; // 100 = completely transparent $img->num_lines = 5; $img->line_color = new Securimage_Color("#eaeaea"); $img->signature_color = new Securimage_Color(rand(0, 64),
81 66 5. Service Level Agreement rand(64, 128), rand(128, 255)); $img->use_wordlist = true; if(!function_exists( imagettftext )){ $img->use_gd_font = true; $img->use_transparent_text = false; $img->use_multi_text = false; } //$img->show($libpath."/backgrounds/bg3.jpg"); $img->show(); } Repository: ajaxplorer-core core.classes.class.captchaprovider.php Un altro aspetto fondamentale, nella gestione della sicurezza a livello di trasferimento dati, si ha nell uso del protocollo a crittografia asimmetrica, ovvero HTTPS, HyperText Transfer Protocol over Secure Socket Layer. Esso risulta indispensabile per garantire trasferimenti sicuri di dati attraverso il web, senza rischiare intercettazioni da parte di terzi.
82 Conclusioni Con questa tesi si è cercato di dare una panoramica sugli aspetti principali di sicurezza nel Cloud computing. Innanzitutto, si è mostrato come il Cloud computing sia nato, si sia sviluppato e come velocemente stia diventando una delle tecnologie più diffuse e più sfruttate. Si è analizzato come in questo ambito siano presenti diversi aspetti problematici sia riguardo le classiche difficoltà di sicurezza, sia gli aspetti giuridici e legali. Si parla di rischi come perdita di informazioni personali, credenziali, dati sensibili, fino a riconoscere violazioni di privacy riguardanti un singolo individuo; alcune tecniche risolvono diversi problemi, lasciando però aperte molte altre questioni. Inoltre, sono stati messi in rilievo alcuni punti di normative che regolano la gestione e il trasferimento di un certo tipo di dati da parte del fornitore di servizi Cloud. In alcuni casi, i dati inconsapevolmente vengono gestiti senza attenersi a regole esistenti, come per esempio il trasferimento dei dati all estero. Un aspetto rilevante su cui si è posta molta attenzione è il rapporto tra il Customer e il Provider, mostrando gli specifici ruoli e le rispettive competenze, ponendoli nell ambito principale in cui essi operano: il Service Level Agreement. Esso è l unico accordo legale che regola il rapporto tra i due attori principali, per definire i termini di servizio richiesto,per le garanzie opportune da ottenere e soprattutto per la validità dei principali punti del 67
83 68 CONCLUSIONI contratto stesso. Partendo dalla creazione di questo, si arriva allo sviluppo e per finire all implementazione in XML dei termini specificati. Se da una parte il Cloud offre numerosi vantaggi a livello di servizi, allo stesso tempo, però, può risultare un problema non porre attenzione agli aspetti di sicurezza, come in qualsiasi altra tecnologia informatica. Naturalmente, grazie alla continua evoluzione del mondo tecnologico, si dovrebbe arrivare a più chiare e dettagliate soluzioni.
84 Bibliografia [1] Wikipedia - [2] IEEE Explore - [3] SSRN - [4] [5] CSA - [6] Balanchandra Reddy Kandukuri, Ramakrishna Paturi V, Atanu Rakshit, Cloud Security Issues, IEEE, 2009 [7] Neil Robinson, Lorenzo Valeri, Jonathan Cave, The Cloud: Understanding the Security, Privacy and Trust Challenges, SSRN, 2010 [8] Shirlei Aparecida de Chaves, Carlos Becker Westphall, Flavio Rodrigo Lamin, SLA Perspective in Security Management for Cloud Computing, IEEE, 2010 [9] Richard Mosher, Cloud Computing Risks, Usa, ISSA, 2011 [10] Kresimir Popovic, Zeljko Hocenski, Cloud computing security issues chalenges, Croazia, IEEE, 2010 [11] Saleem-ullah Lar, Viaofeng Liao, Syed Ali Abbas, Cloud Computing Privacy Security. Global Issues, Challenges, Mechanisms, China, IEEE,
85 70 CONCLUSIONI [12] Massimiliano Rak, Loredana Liccardo, Rocco Aversa, A SLA-based interface for security management in Cloud and GRID Integrations, IEEE, 2011 [13] Jean-Henry Morin, Jocelyn Aubert, Benjamin Gateau, Towards Cloud Computing SLA Risk Management: Issues and Challenges, Hawaii, IEEE, 2012 [14] Pankesh Patel, Ajith Ranababu, Amit Shath, Service Level Agreement in Cloud Computing [15] Linlin Wu, Saurabh Kumar Garg, Rajkumar Buyya, SLA-based admission control for a Software-as-a-Service provider in Cloud computing environments, Journal of Computer and System Sciences, 2012 [16] Wenhui Sun, Yue Xu, Feng Liu, The Role of XML in Service Level Agreements Management, Beijing, Network management Research Center
Gartner Group definisce il Cloud
Cloud Computing Gartner Group definisce il Cloud o Cloud Computing is a style of computing in which elastic and scalable information technology - enabled capabilities are delivered as a Service. Gartner
Una rassegna dei sistemi operativi per il Cloud Computing
Alma Mater Studiorum Università di Bologna SCUOLA DI SCIENZE Corso di Laurea in Informatica Una rassegna dei sistemi operativi per il Cloud Computing Tesi di Laurea in Reti di Calcolatori Relatore: Chiar.mo
C Cloud computing Cloud storage. Prof. Maurizio Naldi
C Cloud computing Cloud storage Prof. Maurizio Naldi Cos è il Cloud Computing? Con cloud computing si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio, di memorizzare/
IT Cloud Service. Semplice - accessibile - sicuro - economico
IT Cloud Service Semplice - accessibile - sicuro - economico IT Cloud Service - Cos è IT Cloud Service è una soluzione flessibile per la sincronizzazione dei file e la loro condivisione. Sia che si utilizzi
Apps4Law: Riflessioni sul Cloud Computing. Roma 21 marzo 2013 Sala Seminari UNIRIZ. Alessandro Graziani, Avvocato alessandrograziani@iuslaw.
Apps4Law: Riflessioni sul Cloud Computing Roma 21 marzo 2013 Sala Seminari UNIRIZ 2 3 Il Cloud Computing si definisce consuetamente secondo due distinte accezioni: 1. un di carattere tecnologico 2. l altra
Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole
Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole Stefano Mainetti [email protected] L ICT come Commodity L emergere del Cloud Computing e i nuovi modelli di delivery Trend n.
Cloud Computing....una scelta migliore. ICT Information & Communication Technology
Cloud Computing...una scelta migliore Communication Technology Che cos è il cloud computing Tutti parlano del cloud. Ma cosa si intende con questo termine? Le applicazioni aziendali stanno passando al
Introduzione al Cloud Computing
Risparmiare ed innovare attraverso le nuove soluzioni ICT e Cloud Introduzione al Cloud Computing Leopoldo Onorato Onorato Informatica Srl Mantova, 15/05/2014 1 Sommario degli argomenti Definizione di
Introduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: [email protected] Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
Creare una Rete Locale Lezione n. 1
Le Reti Locali Introduzione Le Reti Locali indicate anche come LAN (Local Area Network), sono il punto d appoggio su cui si fonda la collaborazione nel lavoro in qualunque realtà, sia essa un azienda,
CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori
ANALISI 11 marzo 2012 CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY Nella newsletter N 4 abbiamo già parlato di Cloud Computing, introducendone
La piattaforma di lettura targhe intelligente ed innovativa in grado di offrire servizi completi e personalizzati
La piattaforma di lettura targhe intelligente ed innovativa in grado di offrire servizi completi e personalizzati Affidabilità nel servizio precisione negli strumenti Chanda LPR Chanda LPR è una piattaforma
Politica per la Sicurezza
Codice CODIN-ISO27001-POL-01-B Tipo Politica Progetto Certificazione ISO 27001 Cliente CODIN S.p.A. Autore Direttore Tecnico Data 14 ottobre 2014 Revisione Resp. SGSI Approvazione Direttore Generale Stato
Focus on Cloud Security
Focus on Cloud Security Matteo Cavallini (ISC)2 Meeting - 7 novembre 2011, Roma EC - Le architetture ICT nell'era del cloud - 24 Maggio 2011, Roma La cloud security in una slide Le preoccupazioni - 1 Fonte
Il cloud per la tua azienda.
Il cloud per la tua azienda. Questo è Microsoft Cloud Ogni azienda è unica. Dalla sanità alla vendita al dettaglio, alla produzione o alla finanza, non esistono due aziende che operano nello stesso modo.
Comprendere il Cloud Computing. Maggio, 2013
Comprendere il Cloud Computing Maggio, 2013 1 Cos è il Cloud Computing Il cloud computing è un modello per consentire un comodo accesso alla rete ad un insieme condiviso di computer e risorse IT (ad esempio,
Capire i benefici di una rete informatica nella propria attività. I componenti di una rete. I dispositivi utilizzati.
LA RETE INFORMATICA NELL AZIENDA Capire i benefici di una rete informatica nella propria attività. I componenti di una rete I dispositivi utilizzati I servizi offerti LA RETE INFORMATICA NELL AZIENDA Copyright
Linux Day 2009 24/10/09. Cloud Computing. Diego Feruglio
Linux Day 2009 24/10/09 Cloud Computing Diego Feruglio Cos è il Cloud Computing? An emerging computing paradigm where data and services reside in massively scalable data centers and can be ubiquitously
La platea dopo la lettura del titolo del mio intervento
La platea dopo la lettura del titolo del mio intervento 2 In realtà..il presupposto è semplice. 3 Cloud computing è un nuovo modo di fornire risorse,, non una nuova tecnologia! P.S. in realtà un modo neanche
Virtualization. Strutturare per semplificare la gestione. ICT Information & Communication Technology
Virtualization Strutturare per semplificare la gestione Communication Technology Ottimizzare e consolidare Le organizzazioni tipicamente si sviluppano in maniera non strutturata e ciò può comportare la
SISTEMI INFORMATIVI E POLITICHE DI OUTSOURCING
SISTEMI INFORMATIVI E POLITICHE DI OUTSOURCING OUTSOURCING OUSOURCING: affidamento a terzi dell attività di sviluppo e/o esercizio e/o assistenza/manutenzione del sistema informativo o di sue parti Scelta
Stefano Mainetti Fondazione Politecnico di Milano
Quale Roadmap per il Cloud Computing? Stefano Mainetti Fondazione Politecnico di Milano [email protected] La definizione classica del Cloud Computing 4 modelli di deployment Cloud private
Brochure Internet. Versione 2010.1 The Keyrules Company s.r.l. Pagina 2 di 8
Ogni organizzazione possiede un sistema di regole che la caratterizzano e che ne assicurano il funzionamento. Le regole sono l insieme coordinato delle norme che stabiliscono come deve o dovrebbe funzionare
Architetture Informatiche. Dal Mainframe al Personal Computer
Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico
Riepilogo delle modifiche di PA-DSS dalla versione 2.0 alla 3.0
Settore delle carte di pagamento (PCI) Standard di protezione dei dati per le applicazioni di pagamento () Riepilogo delle modifiche di dalla versione 2.0 alla 3.0 Novembre 2013 Introduzione Il presente
Cloud Service Broker
Cloud Service Broker La nostra missione Easycloud.it è un Cloud Service Broker fondato nel 2012, che ha partnership commerciali con i principali operatori del settore. La nostra missione: aiutare le imprese
Sistemi Informativi e Sistemi ERP
Sistemi Informativi e Sistemi Trasformare i dati in conoscenza per supportare le decisioni CAPODAGLIO E ASSOCIATI 1 I SISTEMI INFORMATIVI LI - E IMPRESA SISTEMA DI OPERAZIONI ECONOMICHE SVOLTE DA UN DATO
WorkFLow (Gestione del flusso pratiche)
WorkFLow (Gestione del flusso pratiche) Il workflow è l'automazione di una parte o dell'intero processo aziendale dove documenti, informazioni e compiti vengono passati da un partecipante ad un altro al
In estrema sintesi, NEMO VirtualFarm vuol dire:
VIRTUAL FARM La server consolidation è un processo che rappresenta ormai il trend principale nel design e re-styling di un sistema ICT. L ottimizzazione delle risorse macchina, degli spazi, il risparmio
Sistemi informativi secondo prospettive combinate
Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da
Architetture Informatiche. Dal Mainframe al Personal Computer
Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico
Una minaccia dovuta all uso dell SNMP su WLAN
Una minaccia dovuta all uso dell SNMP su WLAN Gianluigi Me, [email protected] Traduzione a cura di Paolo Spagnoletti Introduzione Gli attacchi al protocollo WEP compromettono la confidenzialità
Approccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
Hardware delle reti LAN
Hardware delle reti LAN Le reti LAN utilizzano una struttura basata su cavi e concentratori che permette il trasferimento di informazioni. In un ottica di questo tipo, i computer che prendono parte allo
Firewall, Proxy e VPN. L' accesso sicuro da e verso Internet
L' accesso sicuro da e verso Internet L' accesso ad Internet è ormai una necessità quotidiana per la maggior parte delle imprese. Per garantire la miglior sicurezza mettiamo in opera Firewall sul traffico
CloudComputing: scenari di mercato, trend e opportunità
CloudComputing: scenari di mercato, trend e opportunità Stefano Mainetti [email protected] Milano, 7 Giugno 2012 Cloud Computing: una naturale evoluzione delle ICT Trend n. 1 - ICT Industrialization
La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I
La VPN con il FRITZ!Box Parte I 1 Introduzione In questa mini-guida illustreremo come realizzare un collegamento tramite VPN(Virtual Private Network) tra due FRITZ!Box, in modo da mettere in comunicazioni
Cloud computing: aspetti giuridici
Cloud computing: aspetti giuridici A cura di: Lorenzo Jona Celesia e Paola Zambon Dottori Commercialisti Politecnico di Torino 25 novembre 2011 Cloud computing? Come ordinare un piatto al ristorante La
Infrastruttura di produzione INFN-GRID
Infrastruttura di produzione INFN-GRID Introduzione Infrastruttura condivisa Multi-VO Modello Organizzativo Conclusioni 1 Introduzione Dopo circa tre anni dall inizio dei progetti GRID, lo stato del middleware
Che cos'è il cloud computing? e cosa può fare per la mia azienda
Che cos'è il Cloud Computing? Negli ambienti tecnologici non si parla d'altro e in ambito aziendale in molti si pongono la stessa domanda: Che cos'è il cloud computing? e cosa può fare per la mia azienda
IL CLOUD COMPUTING DALLE PMI ALLE ENTERPRISE. Salvatore Giannetto Presidente Salvix S.r.l
IL CLOUD COMPUTING Salvatore Giannetto Presidente Salvix S.r.l Agenda. - Introduzione generale : il cloud computing Presentazione e definizione del cloud computing, che cos è il cloud computing, cosa serve
Software per Helpdesk
Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella
Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete
IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,
Fatturazione Elettronica PA Specifiche del Servizio
Fatturazione Elettronica PA Specifiche del Servizio Andrea Di Ceglie 25/09/2014 Premessa Data la complessità del processo e la necessità di eseguirlo tramite procedure e canali informatici, il legislatore
I contratti cloud: cosa chiedere, come scegliere
I contratti cloud: cosa chiedere, come scegliere 28/09/12 avv. Cristina Franchi Via inferiore 13 31100 Treviso www.studiolegalefranchi.eu 1 Un mercato più maturo I servizi basati sul Cloud sono sempre
Le fattispecie di riuso
Le fattispecie di riuso Indice 1. PREMESSA...3 2. RIUSO IN CESSIONE SEMPLICE...4 3. RIUSO CON GESTIONE A CARICO DEL CEDENTE...5 4. RIUSO IN FACILITY MANAGEMENT...6 5. RIUSO IN ASP...7 1. Premessa Poiché
Sommario. 1. Cos è SecureDrive... 3. 1.1. Caratteristiche... 3. 1.1.1. Privacy dei dati: SecureVault... 4
Allegato Tecnico Pagina 2 di 7 Marzo 2015 Sommario 1. Cos è... 3 1.1. Caratteristiche... 3 1.1.1. Privacy dei dati: SecureVault... 4 1.1.1.1. Funzione di Recupero del Codice di Cifratura... 4 1.1.2. Sicurezza
Il cloud computing, inquadramenti giuridici e differenze di approccio contrattuale
Il Cloud Computing - I diversi approcci contrattuali e nuove definizioni in ambito privacy 17 gennaio 2012 Milano Avv. Alessandro Mantelero Ricercatore Politecnico di Torino IV Facoltà Cloud computing:
lem logic enterprise manager
logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle
leaders in engineering excellence
leaders in engineering excellence engineering excellence Il mondo di oggi, in rapida trasformazione, impone alle imprese di dotarsi di impianti e macchinari più affidabili e sicuri, e di più lunga durata.
Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale
Network Monitoring & Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale Nicholas Pocher Poker SpA - Settimo Torinese, Novembre 2013 1 Indice Il Network Monitoring:
Il modello di ottimizzazione SAM
Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per
Gestione in qualità degli strumenti di misura
Gestione in qualità degli strumenti di misura Problematiche Aziendali La piattaforma e-calibratione Il servizio e-calibratione e-calibration in action Domande & Risposte Problematiche Aziendali incertezza
Corso di Amministrazione di Sistema Parte I ITIL 1
Corso di Amministrazione di Sistema Parte I ITIL 1 Francesco Clabot Responsabile erogazione servizi tecnici 1 [email protected] Fondamenti di ITIL per la Gestione dei Servizi Informatici ITSM
LE RETI: STRUMENTO AZIENDALE
LE RETI: STRUMENTO AZIENDALE INDICE -Introduzione -La rete e i principali tipi di rete -La rete delle reti: Internet -Evoluzione tecnologica di internet: cloud computing -Vantaggi della cloud all interno
Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche
Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica
MCloud.Gov l infrastruttura SaaS per la Pubblica Amministrazione locale
MCloud.Gov l infrastruttura SaaS per la Pubblica Amministrazione locale 1. Livello infrastrutturale Il Cloud, inteso come un ampio insieme di risorse e servizi fruibili da Internet che possono essere dinamicamente
Data Center Telecom Italia
Data Center Telecom Italia Certificazioni: ISO 27001 e ISO 9001 I Data Center Telecom Italia sono infrastrutture tecnologiche all avanguardia dotate di dispositivi di sicurezza, impianti, risorse professionali
EasyCloud400. Il tuo AS/400. Come vuoi, quanto vuoi. Telecomunicazioni per l Emilia Romagna. Società del Gruppo Hera
EasyCloud400 Il tuo AS/400. Come vuoi, quanto vuoi. Telecomunicazioni per l Emilia Romagna Società del Gruppo Hera L opportunità Aumentare la flessibilità dell azienda in risposta ai cambiamenti dei mercati.
CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA
CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA 2ª PARTE NEL CAPITOLO PRECEDENTE NOTA METODOLOGICA LA PAROLA AI CIO I MIGLIORI HYPERVISOR AFFIDARSI AI VENDOR INVESTIRE PER IL CLOUD APPLICAZIONI
CLOUD AWS. #cloudaws. Community - Cloud AWS su Google+ Amazon Web Services. Amazon VPC (Virtual Private Cloud)
Community - Cloud AWS su Google+ Web Services VPC (Virtual Private Cloud) Oggi vediamo le caratteristiche generali del servizio di VPC per creare una rete virtuale nel cloud. Hangout 29 del 27.10.2014
Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g
Sommario Oracle Database 10g (laboratorio) Dr. Daniele Barone Dr. Simone Grega 1 2 Oracle Database 10g Offre alte qualità del servizio: Performance; Scalabilità; Sicurezza; Affidabilità. Gestione autonoma
B.P.S. Business Process Server ALLEGATO C10
B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel
1- Corso di IT Strategy
Descrizione dei Corsi del Master Universitario di 1 livello in IT Governance & Compliance INPDAP Certificated III Edizione A. A. 2011/12 1- Corso di IT Strategy Gli analisti di settore riportano spesso
La Soluzione per CdA e Top Management. La soluzione è Secure Board by Boole Server
La Soluzione per Fusioni e acquisizioni, changing management, pianificazione e sviluppo del business, la documentazione correlata ai consigli di amministrazione, il corretto utilizzo dei documenti riservati
La tecnologia cloud computing a supporto della gestione delle risorse umane
La tecnologia cloud computing a supporto della gestione delle risorse umane L importanza delle risorse umane per il successo delle strategie aziendali Il mondo delle imprese in questi ultimi anni sta rivolgendo
COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING
Febbraio Inserto di Missione Impresa dedicato allo sviluppo pratico di progetti finalizzati ad aumentare la competitività delle imprese. COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING COS E UN
SOLUZIONE Web.Orders online
SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo
Premesso che il Sistema di e-learning federato per la pubblica amministrazione dell Emilia-Romagna (SELF):
CONVENZIONE PER L ADESIONE AL SISTEMA DI E-LEARNING FEDERATO DELL EMILIA-ROMAGNA PER LA PUBBLICA AMMINISTRAZIONE E L UTILIZZO DEI SERVIZI PER LA FORMAZIONE Premesso che il Sistema di e-learning federato
Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente
Cos'è una vlan Da Wikipedia: Una LAN virtuale, comunemente detta VLAN, è un gruppo di host che comunicano tra di loro come se fossero collegati allo stesso cablaggio, a prescindere dalla loro posizione
Reti di Telecomunicazione Lezione 8
Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica [email protected] Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato
1. BASI DI DATI: GENERALITÀ
1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente
Presentazione di Cedac Software
Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994
Abstract. Reply e il Cloud Computing: la potenza di internet e un modello di costi a consumo. Il Cloud Computing per Reply
Abstract Nei nuovi scenari aperti dal Cloud Computing, Reply si pone come provider di servizi e tecnologie, nonché come abilitatore di soluzioni e servizi di integrazione, volti a supportare le aziende
InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: [email protected]
izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,
3. Introduzione all'internetworking
3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia
della manutenzione, includa i requisiti relativi ai sottosistemi strutturali all interno del loro contesto operativo.
L 320/8 Gazzetta ufficiale dell Unione europea IT 17.11.2012 REGOLAMENTO (UE) N. 1078/2012 DELLA COMMISSIONE del 16 novembre 2012 relativo a un metodo di sicurezza comune per il monitoraggio che devono
SERVER E VIRTUALIZZAZIONE. Windows Server 2012. Guida alle edizioni
SERVER E VIRTUALIZZAZIONE Windows Server 2012 Guida alle edizioni 1 1 Informazioni sul copyright 2012 Microsoft Corporation. Tutti i diritti sono riservati. Il presente documento viene fornito così come
Caratteristiche e funzionalità del cloud computing. Marco Barbi Flavio Bonfatti Laboratorio Softech ICT Università di Modena e Reggio Emilia
Caratteristiche e funzionalità del cloud computing Marco Barbi Flavio Bonfatti Laboratorio Softech ICT Università di Modena e Reggio Emilia Sommario Premesse: definizioni Prima del cloud computing: evoluzione
La virtualizzazione ed i suoi aspetti di sicurezza. Sergio Sagliocco Responsabile SecureLAB Direzione R&D CSP
La virtualizzazione ed i suoi aspetti di sicurezza Sergio Sagliocco Responsabile SecureLAB Direzione R&D CSP Presentazione della Monografia - CAP 1: La virtualizzazione: concetti di base - CAP 2: La virtualizzazione
Audit & Sicurezza Informatica. Linee di servizio
Audit & Sicurezza Informatica Linee di servizio Application Control Consulting Molte organizzazioni hanno implementato applicazioni client/server integrate, come SAP e Oracle Queste applicazioni aumentano
SOFTWARE CLOUD PER LA GESTIONE DEI SISTEMI DI GESTIONE. Rev.013 09-2015
SOFTWARE CLOUD PER LA GESTIONE DEI SISTEMI DI GESTIONE Rev.013 09-2015 Indice Aspetti tecnici e assistenza Perché QSA.net Principali funzioni Destinatari Perché Cloud Perché QSA.net? Uno strumento per
I sistemi virtuali nella PA. Il caso della Biblioteca del Consiglio Regionale della Puglia
I sistemi virtuali nella PA Il caso della Biblioteca del Consiglio Regionale della Puglia Indice I sistemi virtuali Definizione di Cloud Computing Le tecnologie che li caratterizzano La virtualizzazione
Framework di sicurezza della piattaforma OCP (Identity & Access Management)
Smart Cities and Communities and Social Innovation Bando MIUR D.D. 91/Ric. del 5 luglio 2012 Framework di sicurezza della piattaforma OCP (Identity & Access Management) AAI: Il problema che OCP ha affrontato
Sistema operativo: Gestione della memoria
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e
MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA
MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...
Reti di Telecomunicazione Lezione 6
Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica [email protected] Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server
Managed Print Services
Managed Print Services Il servizio SmartPage di gestione dei dispositivi di stampa è un investimento sicuro e permette di ottenere vantaggi economici immediati Risparmiare con Errebian Un incontro con
COMUNICATO. Vigilanza sugli intermediari Entratel: al via i controlli sul rispetto della privacy
COMUNICATO Vigilanza sugli intermediari Entratel: al via i controlli sul rispetto della privacy Nel secondo semestre del 2011 l Agenzia delle Entrate avvierà nuovi e più articolati controlli sul rispetto
Architetture Applicative
Alessandro Martinelli [email protected] 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture
Domande e risposte su Avira ProActiv Community
Domande e risposte su Avira ProActiv Community Avira AntiVir versione 10 sfrutta un innovativa tecnologia protettiva cloud-based, denominata ProActiv, che identifica e blocca i nuovi virus non appena questi
