ALLEGATO AL CAPITOLATO TECNICO Appalto per l’affidamento dei servizi di sviluppo, manutenzione e supporto del software applicativo “Sistema informatico di prevenzione del furto di identità (SCIPAFI)” Requisiti di Esercibilità ICT pag. 1 di 9 INDICE GENERALE REQUISITI DI ESERCIBILITÀ PER LE APPLICAZIONI ICT.................... 3 OBIETTIVI .................................................................................................................................... 3 PREREQUISITI ............................................................................................................................... 3 Architettura ............................................................................................................................ 3 Ambiente operativo e software di base ............................................................................ 3 PROCEDURA PER I RILASCI (CHANGE MANAGEMENT) ................................................................... 5 RILASCIO DELLE APPLICAZIONI .................................................................................................... 5 REQUISITI TECNICI DI BASE .......................................................................................................... 7 Autenticazione utente .......................................................................................................... 7 Autenticazione dell’applicazione al database (connessione) ........................................ 7 Sicurezza ............................................................................................................................... 7 Puntamenti alle risorse in rete............................................................................................ 7 Logging applicativo .............................................................................................................. 8 Piano di manutenzione del database ................................................................................ 8 Requisiti dell’utente finale ................................................................................................... 8 Procedura di rollback ........................................................................................................... 8 REQUISITI TECNICO-ORGANIZZATIVI ............................................................................................ 9 Accesso del fornitore da remoto ........................................................................................ 9 pag. 2 di 9 Requisiti di esercibilità per le applicazioni ICT Obiettivi Di seguito vengono definite le indicazioni guida di esercibilità per i fornitori di applicazioni informatiche in Consap. Prerequisiti Gli sviluppi debbono necessariamente conformarsi ad una serie di standard minimi architetturali su cui operare. Tali standard operativi prescrivono che le piattaforme siano conformi a quanto segue. Architettura Le applicazioni - in linea generale - debbono conformarsi ad una architettura di tipo multi-tier: con Database separato dai livelli di presentazione e business-logic e con accesso client via browser. Ambiente operativo e software di base Le applicazioni debbono operare in un ambiente avente le seguenti caratteristiche di base, in neretto quelle preferenziali. Sistema Operativo: • Microsoft Windows Server 2008 R2 Standard Edition Italiano (minimo) • Microsoft Windows Server 2008 R2 Enterprise Edition Italiano • Microsoft Windows Server 2012 Standard Edition Italiano • Microsoft Windows Server 2012 Enterprise Edition Italiano Database Server: • Microsoft SQL Server 2008 R2 Standard Edition Italiano (minimo) • Microsoft SQL Server 2008 R2 Enterprise Edition Italiano • Microsoft SQL Server 2012 sp1 Standard Edition Italiano • Microsoft SQL Server 2012 sp1 Enterprise Edition Italiano pag. 3 di 9 Web Server: • Microsoft IIS 7 • Microsoft IIS 7.5 • Microsoft IIS 8 Framework: • Dot net 3.5 • Dot net 4 • Dot net 4.5 Le versioni suelencate sono le release minime richieste: è possibile proporre versioni superiori e/o tecnologie differenti da quelle elencate previa verifica in fase di avvio della progettazione con la struttura aziendale competente. Eventuali ulteriori requisiti di tipo applicativo saranno forniti in un documento a parte dalla Struttura competente. I suddetti ambienti sono totalmente virtualizzati, su piattaforma Vmware Vsphere v5.1, la cui compatibilità è un requisito essenziale per qualunque applicazione. pag. 4 di 9 Procedura per i rilasci (change management) Le applicazioni dovranno essere rilasciate dapprima in collaudo ed al termine di questo in produzione, seguendo una procedura programmata e codificata come segue. Rilascio delle applicazioni Il primo rilascio di ogni applicazione deve essere sempre accompagnato da: 1. Scheda di delivery dell’applicazione compilata in ogni sua parte. 2. Pacchetto di installazione del software: Il codice sorgente dell’applicazione (ove previsto). Il codice compilato. I file di configurazione e/o script di creazione dell’ambiente (es.: DDL SQL di creazione/modifica di oggetti nel database, creazione/modifica degli utenti/abilitazioni, piano di manutenzione del DB, etc..) La procedura per il rilascio sia in collaudo che in esercizio contenente istruzioni dettagliate dei passi da eseguire per l’installazione in collaudo/esercizio e per l’eventuale rollback, ossia per il ripristino in emergenza della versione precedente (o la disinstallazione se prima release) in caso di problemi non altrimenti risolvibili. Tale documento conterrà indicazioni su: o L’elenco del/dei file di configurazione previsti per l’applicazione, ad esempio: file di parametri per i puntamenti a risorse su filesystem (es.: cartelle in share) file contenenti credenziali per la connessione al db file di log applicativo eventuali file di altra natura necessari alla configurazione o Gli step preparatori, quali modifica di configurazioni necessaria al funzionamento dell’applicazione eventuale cancellazione di elementi non più necessari ogni altra attività necessaria alla predisposizione dell’ambiente pag. 5 di 9 La documentazione tecnica formata da: o Manuale utente. o Architettura del Sistema. o Specifica delle interfaccie o Specifiche funzionali o Piano dei test Il rilascio di MAC e MEV di ogni applicazione deve essere sempre accompagnato da: 1. Scheda di delivery aggiornata. 2. Pacchetto di installazione del software: Il codice sorgente dell’applicazione (ove previsto). Il codice compilato I file di configurazione e/o script modificati La procedura per il rilascio in collaudo ed esercizio opportunamente aggiornata La documentazione tecnica aggiornata. Un elenco delle nuove funzioni implementate o delle eventuali MAC e MEV presenti nel pacchetto di rilascio. Eventuali ulteriori requisiti di tipo applicativo saranno forniti in un documento a parte dalla Struttura competente. pag. 6 di 9 Requisiti tecnici di base Di seguito vengono descritti nei dettagli una serie di requisiti tecnici di base a cui le applicazioni debbono essere conformi. Autenticazione utente Se gli utenti dell’applicazione sono tutti utenti interni (ossia personale Consap), è richiesto che l’autenticazione utente sia mutuata dall’autenticazione di dominio, ossia il nome utente e la password non siano verificati dall’applicazione ma dal sistema operativo sottostante (autenticazione di sistema). In caso di utenti esterni o misti, l’ autenticazione (autenticazione applicativa) dovrà prevedere speciali controlli a protezione delle credenziali di autenticazione (in particolare le password dovranno essere opportunamente protette tramite controlli crittografici). Autenticazione dell’applicazione al database (connessione) L’ autenticazione dell’applicazione al database (ossia quella effettuata in fase di connessione al DB) non può essere fatta con parametri e credenziali (ossia utenza e password) “scolpite” all’interno dell’applicazione, ma deve risiedere su fonti esterne. Tali fonti possono essere, ad esempio: • Il file web.config di IIS o analoghi file di configurazione specifici • File di testo o binari che risiedano su filesystem • Chiavi di registro Questo requisito ha motivazioni sia di manutenibilità, rendendo facilmente configurabile il passaggio dell’applicazione tra gli ambienti di collaudo ed esercizio, che di sicurezza, rendendo più facilmente proteggibili – ad es. tramite ACL con permessi specifici e/o tramite crittografia le suddette credenziali da eventuali utilizzi impropri. Sicurezza Le applicazioni debbono essere conformi a quanto dettato dalla vigente normativa sulla privacy (196/03), in particolare per tutto quanto previsto nell’Allegato B della succitata legge. Puntamenti alle risorse in rete I puntamenti alle risorse esterne all’applicazione, quali ad esempio cartelle o file presenti su specifiche share/directories, non debbono essere cablati all’interno delle applicazioni ma risiedere su fonti esterne, quali ad esempio: • file di configurazione dell’applicazione • chiavi di registro • tabelle su database pag. 7 di 9 Questo requisito ha motivazioni di manutenibilità, rendendo facilmente configurabile la variazione dei puntamenti durante i passaggi tra gli ambienti di sviluppo, collaudo ed esercizio (ed eventuale viceversa). Eventuali puntamenti a server debbono comunque essere effettuati sempre per hostname (nome server) e mai per indirizzo IP. Questo consente di poter cambiare i piani di indirizzamento della rete in maniera trasparente per le applicazioni. Le URL di puntamento delle applicazioni web (internet o intranet) non debbono contenere puntamenti a nomi server ma a domini di 3° livello (es.: http://myapp.consap.local). Logging applicativo Ai fini di debug e/o di tracciamento di eventuali operazioni sensibili, l’applicazione deve prevedere la possibilità di generare un log applicativo, attivabile parametricamente. Tale log potrà risiedere su filesystem (ad esempio file con estensione .log) oppure su database, a seconda della scelta progettuale. Tale log dovrà avere la possibilità di prevedere parametricamente l’attivazione di diversi livelli di dettaglio (ad esempio “warning” “error” “debug”). In caso i log risiedano su DB dovranno essere previste adeguate procedure di svecchiamento/manutenzione del db quando i volumi generati dai log siano di una certa rilevanza. (ad es.: > 1 MB al giorno) Piano di manutenzione del database Il rilascio delle applicazioni che operano su database, deve essere corredato di apposito piano di manutenzione del database, ossia di job da eseguire periodicamente (tipicamente in modalità schedulata) che effettuino le opportune operazioni di manutenzione delle basi di dati per garantire performance ottimali dell’applicazione (es.: reorg dei datafile, aggiornamento/ricostruzione degli indici, aggiornamento delle statistiche, etc.). Requisiti dell’utente finale L’applicazione deve poter essere eseguita da utenti con livelli di abilitazione standard sul sistema sottostante e, quando necessarie, abilitazioni puntuali su specifiche risorse. Gli utenti finali non saranno né dovranno essere amministratori della macchina, e nessuna applicazione potrà richiedere tale caratteristica come requisito. Procedura di rollback Il rilascio di nuove versioni di una applicazione deve essere corredato da istruzioni dettagliate dei passi da eseguire per il rollback, ossia per il ripristino in emergenza della versione precedente (o la disinstallazione se prima release) in caso di problemi non altrimenti risolvibili. pag. 8 di 9 Requisiti tecnico-organizzativi Accesso del fornitore da remoto Al fornitore dell’applicazione può essere concesso, dietro richiesta da parte del responsabile applicativo Consap di competenza (o infrastrutturale, nel caso di fornitori di software di base) accesso da remoto tramite VPN al solo ambiente di Sviluppo/Validazione (quando previsti). In nessun caso per motivi di sicurezza verrà concesso a fornitori esterni di applicazioni (infrastrutturali e/o di business) accesso in VPN su sistemi di esercizio. pag. 9 di 9