Mar 21, 2017
Open Data con Drupal nella PA: considerazioni su licensing e privacy
Andrea Dori – Dipartimento di Ingegneria Informatica Automatica e Gestionale
e Claudia Pavoletti – Intel Security
L’università è costituita da un (enorme) gruppo sociale che produce dati
ricercatore
• Producopubblicazioniscientifiche
• Accumuloesperienza ecreonuovemodalitànell’utilizzodeglistrumenti
• Partecipoaworkshop• Tengoseminari• Scrivoprogetti• Scrivorelazioni
docente
• Tengolelezioni deicorsi• Producoilmateriale
didattico• Parlo conglistudenti• Esamino glistudenti• Scrivoilprogrammadel
corso• Collaboroalladefinizione
delmanifesto
studente
• Prendoappunti deicorsi• Scrivotesine• Svolgountirocinio• Scrivolatesi• Faccioesperienze
lavorativelegateaimieicorsi
• Svolgoattività conaltristudenti
• Utilizzoiservizi chel’universitàmimetteadisposizione
• Sopravvivo
personale(staff)
• Svolgoprocedureamministrative
• Accumuloesperienze suidati esulleprocedure
• Eseguomappaturedeiprocessisullarealtàchemicirconda
• Parlo conglistudenti econidocenti
• Determino ecercodifarseguireilcalendariodellescadenze
• Accumulocompetenzespecifichealmiocampodiapplicazione
disseminazione[dis-se-mi-na-zió-ne]s.f. (pl. -ni)Azione e risultato del disseminare, dello spargere qua e là: d. di carte in tutta la casa
Dalla disseminazione dei dati al data dissemination
sucarta sumemoriedipc sunostriserver sudatabaseesterni
Where have all our datagone?
Per riuscire a raccogliere, catalogare, riutilizzare, pubblicare e infine analizzare queste informazioni, abbiamo bisogno di uno standard di riferimento per la gestione dei dati, che dobbiamo imporre a 63 dipartimenti, 11 facoltà, 13 aree dell’amministrazione centrale, 300 corsi di laurea, 8000 unità di personale e 120.000 studenti.
Abbiamo bisogno di uno standard
Decidere di far convergere tutti i nostri servizi web su un unico CMS ci ha dato la possibilità di riutilizzare i dati ”disseminati” nella realtà dell’ateneo e riesporli al nostro interno (o anche fuori) attraverso servizi costruiti su Drupal, facilitando enormemente l’integrazione dei dati nella nostra “galassia” di siti.Drupal viene imposto come unica piattaforma di sviluppo dei siti web nel settembre del 2011.
Drupal non è uno standard, ma è stato il nostro standard
Ogni volta che abbiamo scritto un’applicazione di gestione dei dati con Drupal ci siamo sforzati di produrre anche una API di accesso ai dati stessi che li restituisse in vari formati standard e aperti.
In pratica…
Un esempio su tutti: Iris
IRIS REST
request
response (json)
request
/applicazione/indirizzo_email_uniroma1/offset/limit
response (xml,csv,json…)
Paginapersonale
Paginapersonale
Paginapersonale
IRISGW SITOWEBUNIROMA1
Views Json
Views dataexport
Custommodules
Ci piacerebbe raccontarlo, ma la realtà è che la nostra spinta verso la filosofia dell’open data non nasce da una pianificazione in risposta all’esigenza di consolidare i dati, ma da un obbligo legislativo, il famigerato
Dlgs 33/2013
Grazie(?) a questo decreto, ogni sito web di ogni centro di spesa di ateneo diventa lo strumento unico di pubblicità legale per la maggior parte delle nostre attività finanziarie. In pratica, ogni sito diventa un oggetto di valenza giuridica.
Quindi siamo stati virtuosi?
• La trasparenza amministrativa obbliga la pubblicazione dati personali, ma la privacy vuole che si limiti al massimo il loro riutilizzo;
• Questi dati quindi devono essere pubblicati solo per lo scopo e la finalità del decreto;
• I dati devono essere generalmente nascosti ai motori di ricerca;• Si deve evitare il download massivo dei file;
Gli obblighi e… gli altri obblighi
• La pubblicazione di dati personali eccedenti lo scopo del decreto è sanzionabile;
• La pubblicazione oltre i limiti temporali stabiliti è sanzionabile;• La pubblicazione di dati sensibili è sempre sanzionata;• L’esposizione, anche accidentale, ai motori di ricerca è sanzionata;
I rischi nel workflow
• Sicuramente bisogna evitare che i nodi del sito vengano semplicemente enumerati
• A volte, ma non sempre, i dati di certi campi vanno mascherati• Utenti di centri diversi devono vedere solo i dati della propria organizzazione
I nodi da sciogliere in Drupal
• LDAP: una soluzione unica di autenticazione per tutti i nostri siti, fornisce identità a partire dalla posta elettronica istituzionale e la base di dati è agganciata in maniera forte alle determinazioni degli organismi che controllano la “popolazione” di Sapienza (segreterie studenti, ufficio del personale, consigli di facoltà ecc.)
• TAXONOMY ACCESS CONTROL: il controllo degli accessi tramite tassonomie ci ha dato la flessibilità che ci serviva per creare dei gruppi di utenti;
• VIEWS / VIEWS CONDITIONAL: ogni visualizzazione dei dati per gli utenti anonimi è generata da una vista che eventualmente riscrive alcuni campi se è richiesto dai parametri;
Che soluzioni Drupal abbiamo usato
• L’unico modo per garantire una vista completamente logica del dato è quello di separare i workflow gestionali dalla presentazione dei dati;
• Un sito in Intranet sarà dedicato alla elaborazione dei dati ed esporrà solo quello che rientra negli obblighi al momento della richiesta attraverso dei webservices;
• Il sito di presentazione non conterrà alcun dato all’interno, ma solo la logica per generare la richiesta;
• Idealmente i futuri requisiti di legge verrebbero implementati solo sul sito «interno»
La vera soluzione
Per la vera soluzione useremo
TheWeb
Publishingserver
Datamanagementserver
utenti
LDAP
Services
Rules
VBO
U/Xenhancements
Views XMLViews Json
request
Rules
Tornando a noi: questa esperienza ci ha insegnato che la nostra spinta necessaria verso open data per conseguire il consolidamento dei dati di cui abbiamo bisogno non può prescindere dalla piena tutela della privacy dei dati in questione.Come possiamo assicurarcene?
Open data e privacy