Accesso all'informazione e collaborazione virtuale
•Servizi informativi integrati ed•interattivi: Interoperabilità•Corso di aggiornamento finanziato dalla •Regione Toscana per le biblioteche pubbliche•Firenze, 17 gennaio2012•Valdo Pasqui•[email protected]
Contenuti della sessione
Parole chiave e linee evolutive Integrazione ed interoperabilità:
modelli e protocolli tradizionali dell'ambito bibliotecario
Transizione a SOA e Cloud (SaaS) Controllo dell’accesso e gestione
delle Identità
Valdo Pasqui - Corso AIB e Regione Toscana 2Firenze, 17/01/2012
Premessa
I servizi sono in contiuna evoluzione: il loro cambiamento deve essere progettato, realizzato e gestito considerandolo un elemento strutturale delle organizzazioni
Quattro elementi chiave: I processi organizzativi Il fattore umano Valore dell’informazione Innovazione ICT come opportunità
Valdo Pasqui - Corso AIB e Regione Toscana 3Firenze, 17/01/2012
Alcune parole d’attualità
Valdo Pasqui - Corso AIB e Regione Toscana 4Firenze, 17/01/2012
Partecipazione
Collaborazione
Social network
Ubiquitous
Mobile
Cloud Computin
gSaaS, IaaS
ServiceOriented
Architectures
Web Services
Processi
Open Data
Open
Open Access Web
Architecture
Linked Data
SW Open Source Semantic
Web
Digital Preservatio
n
Paradigma “partecipativo”
Google+Amazon+YouTube+Wiki+Facebook
L’utente è un soggetto attivo che partecipa e coopera all’arricchimento del catalogo, interagisce con gli altri utenti e con i bibliotecari R. D. Lankes, J. Silverstein, S.Nicholson Le reti
partecipative, la biblioteca come conversazione http://www.aib.it/aib/cg/gbdigd07.htm3
Trad. a cura di A. Di Iorio e M.L. Vignocchi AIB Gruppo di studio sulle biblioteche digitali (2007)
Valdo Pasqui - Corso AIB e Regione Toscana 5Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 6Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 7Firenze, 17/01/2012
Ruolo attivo degli utenti (social tagging, bookmarking,annotation….) Classificazione Cooperativa usando parole chiave
(keywords) liberamente scelte dalle persone in un ambiente di cooperazione spontanea, senza coordinamento centrale Folksonomy: Folks=people + Taxonomy
taxis=classificazione + nomia/nomos=metodo/gestione Associare parole chiave (tags) ai contenuti
Commenti, citazioni, recensioni, raccomandazioni Per approfondire: LibraryThing = Costruzione
condivisa del catalogo + social network http://www.librarything.com/
Valdo Pasqui - Corso AIB e Regione Toscana 8Firenze, 17/01/2012
Il termine “Open” declinato come:
Open Software Open Access Open Data
Open Source LMS
Evergreen http://www.open-ils.org/
(LibLime) Koha http://koha.org/
OpenBiblio http://obiblio.sourceforge.net/ (datato, solo Windows)
Aggregatori eXtensible Catalog http://www.extensiblecatalog.org/
Insieme di strumenti per trasfomare,aggregare (OAI-PMH,FRBR), gestire, indicizzare metadati (DC,MARC,RDA, XC), resi disponibili tramite Drupal, integrazione con moduli di circolazione di ILS tramite NCIP
VuFind http://www.vufind.org (anche indicizzazione full text)
Digital Repository (DSpace, Fedora, eprints.org)
Valdo Pasqui - Corso AIB e Regione Toscana 9Firenze, 17/01/2012
Per approfondire: aggregatori eXtensible Catalog demo
http://www.extensiblecatalog.org/software/drupaltoolkit/demo
VuFind demohttp://vufind.org/demo/
Valdo Pasqui - Corso AIB e Regione Toscana 10Firenze, 17/01/2012
Dati aperti - Open Data Dati aperti a tutti per il riuso, remixing, mash-up
etc. ambito scentifico e governativo
Presentazioni (learning object) Formez: Open Data http://elearning.formez.it/CorsiMoodle/AD/C013/LO20/motore/start.htm
Licenze d’uso http://elearning.formez.it/CorsiMoodle/AD/C015/LO22/motore/start.htm
Italia, dati aperti PA http://www.dati.gov.it/ Comune di Firenze: file contenente elementi puntuali che individuano le
biblioteche sul territorio comunale Vademecum http://www.dati.gov.it/sites/default/files/VademecumOpenData.pdf
Catalogo aperto di dati http://it.ckan.net/ Manuale Open Data Open Knowledge Foundation
http://opendatamanual.org/it/
Associazione italiana per l'Open Government http://www.datagov.it/
Linked Data http://linkeddata.org/
Linked Open data Italia http://www.linkedopendata.it/Valdo Pasqui - Corso AIB e Regione Toscana 11Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 12Firenze, 17/01/2012
Ubiquitous….
Utenti permanentemente connessi alla rete
Connessioni Wi-fi e Mobile, i-phone, i-pad I dispositivi possono essere usati per
salvare materiale, riferimenti, applicazioni, annotazioni e osservazioni e per accedere alle fonti in tempo reale
I servizi risiedono nella rete
Alcuni servizi mobile• Ricerca nel catalogo• Chiamare la biblioteca con un click• Ricerche e risultati georeferenziati:
• Individuare la biblioteca più vicina che dispone del libro/risorsa cercata
• Trovare il percorso più veloce per arrivare alla biblioteca
• Individuare librerie nelle vicinanze• RedLaser (WorldCat) è un sempio di app per iPhone: “a comparison
shopping app that uses your iPhone's camera to scan a book's barcode and gives you results from Google, theFind and local libraries”
• Pagamenti tramite telefonoValdo Pasqui - Corso AIB e Regione
Toscana 13Firenze, 17/01/2012
…i servizi sono “in the Cloud”
Web-scale discovery tools (Primo Central ExLibris, Summon Serial Solutions, EBSCO Discovery Service)
OCLC WorldCat Motori di ricerca (Google, Bing) Posta elettronica Google+, Google Docs, Amazon, Facebook,
Linkedin Le collezioni digitali
Valdo Pasqui - Corso AIB e Regione Toscana 14Firenze, 17/01/2012
NCSU Libraries Mobile http://www.lib.ncsu.edu/m
Valdo Pasqui - Corso AIB e Regione Toscana 15Firenze, 17/01/2012
NCSU Libraries Mobile
Valdo Pasqui - Corso AIB e Regione Toscana 16Firenze, 17/01/2012
Per approfondire: mobile e biblioteche:
ACS Mobile (39 riviste della American Chemical Society)o http://pubs.acs.org/page/tools/acsmobile/index.html
demo video
WorldCat Mobileo http://www.worldcat.org/mobile/o http://www.worldcat.org/m/
PLoS Medicine application for the iPhoneo http://www.plos.org/cms/node/517
MyMobileBristol: prototipo nell’ambito dei servizi pubblici (comune) e università: http://mymobilebristol.com/
Valdo Pasqui - Corso AIB e Regione Toscana 17Firenze, 17/01/2012
Interoperabilità:
Valdo Pasqui - Corso AIB e Regione Toscana 18Firenze, 17/01/2012
Definizioni e concettiprotocolli e modelli dell’ambito bibliotecariotrend tecnologici
Definizione Una definizione tecnica
The ability of software and hardware on multiple machines from multiple vendors to communicate meaningfully – IETF RFC 1983 Internet Users' Glossary
Integrazione delle applicazioni (dati, funzioni) Business process interoperability (BPI):
i processi lavorano insieme (cooperano) superare i limiti dei “silos informativi” ottimizzare i processi organizzativi eliminare o ridurre la duplicazione dei dati migliorare il controllo sui dati
Valdo Pasqui - Corso AIB e Regione Toscana 19Firenze, 17/01/2012
Processo (business process) ”a structured, measured set of activities designed
to produce a specific output for a particular customer or market. It implies a strong emphasis on how work is done within an organization, in contrast to a product focus’s emphasis on what. A process is thus a specific ordering of work activities across time and space, with a beginning and an end, and clearly defined inputs and outputs: a structure for action. ... Taking a process approach implies adopting the customer’s point of view. Processes are the structure by which an organization does what is necessary to produce value for its customers.” (Davenport, 1993)
Valdo Pasqui - Corso AIB e Regione Toscana 20Firenze, 17/01/2012
L’ interoperabilità dal punto di vista tecnico si realizza con: Adesione agli standard (protocolli, formati,
metadati) Middleware, software che permette di intermediare
tra applicazioni diverse (es. CORBA) API (Application programming interface), sono
interfacce che consente di far dialogare componenti software (applicazioni, servizi, moduli): Implementazione di un protocollo Nella programmazione a oggetti: insieme dei metodi pubblici di una classe Web Services (WS) basati sul protocollo SOAP (Simple Object Access
Protocol) o realizzati in modalità RESTful (Representational State Transfer)
Valdo Pasqui - Corso AIB e Regione Toscana 21Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 22Firenze, 17/01/2012 22
Architettura base sistemi distribuitiClient/Server e paradigma
Richiesta/Risposta1) Chiede un servizio
2) Rivece la richiesta
3) La elabora
4) Invia risposta
L’interazione tra Client e Server avviene tramite:
• Remote Procedure Call (RPC) = richiesta/risposta• Scambio Messaggi = invia/accoda/consuma
ProcessoClient
ProcessoServer
I diversi tipi di “logica”
Presentazione (presentation)o Acquisizione input + validazione datio Emissione e formattazione output (es. stili)
Applicativa (application/control)o Componenti applicativi che implementano la
“business logic”o Coordinamento dei flussi di processo
Persistenza dei dati o Gestisce l’accesso ai dati (recupero, inserimento,
aggiornamento)
Valdo Pasqui - Corso AIB e Regione Toscana 23Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 24Firenze, 17/01/2012 24
Architetture a più livelli: i livelli sono separati, risiedono su sistemi diversi
Presentation
Caching
Application
Integration
Data
GUI (browser)
Web Cache, Proxy
Application ServerBusiness Logic
Coordinamento(sincrono, asincrono)dei processi
Persistenza dei dati(data base)
Interoperabilità e biblioteche
Valdo Pasqui - Corso AIB e Regione Toscana 25Firenze, 17/01/2012
Orientata ai dati (xxMARC, DC, MODS, LOM, etc) Z39.50 - query distribuite OAI-PMH - Harvesting dei metadati + Data
Provider e Service Provider NISO OpenURL Context Sensitive Reference
Linking Prestito interbibliotecario e Document
Delivery ISO ILL 10160/10161, NCIP, SIP2 Electronic Data Interchange (EDI)
Paradigma Discover to Deliver (D2D) Scarsa integrazione con le altre applicazioni
Valdo Pasqui - Corso AIB e Regione Toscana 26Firenze, 17/01/2012
Protocolli in ambito bibliotecario Z39.50 - Session
oriented- ASN.1
Cross-seaching
Interrogazioni distribuite attraverso metadati descrittivi (di solito bibliografici)
OAI-PMH - XML- HTTP
MetadataHarvesting
Cattura, aggregazione e indicizzazione di metadati associati a oggetti digitali…ma anche analogici
NISO OpenURL
- HTTP Reference linking “context sensitive”
I resolver usano i metadata trasportati dai link (URL) per generare dinamicamente riferimenti alle risorse in funzione del contesto dell’utente
ISO ILL 1016010161
- request/resp.
- ASN.1
Inter Library Loan & Document Delivery
Ciclo completo per la gestione richiesta-risposta
Query distribuite (cross searching)
Z39.50 Per i bibliotecari (anni 80-90), non diffuso nel
Web Client, Target, Search, Scan, Result Set, Profili
Gateway WWW/Z39.50 MetaOPAC e metamotori di ricerca Evoluzione Search/Retrieve Web service
(SRW) and Search/Retrieve URI (SRU 2.0) e il Contextual Query Language (CQL)
Valdo Pasqui - Corso AIB e Regione Toscana 27Firenze, 17/01/2012
Ricerca federata
Valdo Pasqui - Corso AIB e Regione Toscana 28Firenze, 17/01/2012
TargetZ39.50
AltriTarget
HTTP, SRW/SRU
MetaSearcher
Gateway WWW
Browser
Utente ClientZ39.50
esempi
CATALOGO VIRTUALE TOSCANO (MetaOpac) http://www.cultura.toscana.it/biblioteche/guida/catalogo_virtuale.shtml MAI MetaOPAC Azalai Italiano
http://www.aib.it/aib/opac/help.htm
MetaCipe http://metaricerca.cab.unipd.it:8332/V
The European Library http://search.theeuropeanlibrary.org/portal/en/index.html
Valdo Pasqui - Corso AIB e Regione Toscana 29Firenze, 17/01/2012
Metadata Harvesting Modello funzionale
Data Provider Service Provider Harvesting dei metadati (almeno Dublin Core)
Protocolo OAI-PMH (via HTTP) Modello dei dati “resource-item-metadata-record”
Item inteso come punto di accesso logico al repository “from which metadata about a resource can be disseminated”
Non solo metadati: il comando “getRecord” può restituire anche un file PDF o un documento XML che reppresenta un oggetto digitale secondo uno dei formati standard più diffusi (MPEG-21 DIDL o METS)
Valdo Pasqui - Corso AIB e Regione Toscana 30Firenze, 17/01/2012
OAI-Harvesting
Valdo Pasqui - Corso AIB e Regione Toscana 31Firenze, 17/01/2012
RR
ee
pp
oo
ss
ii
tt
oo
rr
yy
Data Providers Service Providers
Protocol for
Metadata Harvesting (PMH V.2)
metadata
metadata
utentidei
servizia
valoreaggiunto
Il modello OAI e OAI-PMH
Valdo Pasqui - Corso AIB e Regione Toscana 32Firenze, 17/01/2012
• Risorsa = oggetto cui sono associati i metadati
• Item = contenitore che genera i metadati (ha un identificatore unico)
• Record = metadati espressi in sintassi XML (almeno Dublin Core)
• Tipi di richieste:– GetRecord– ListIdentifiers– ListRecords– Identify– ListMetadataForm
ats– ListSets
• Harvesting selettivo:– Datestamps– Sets(=>collezioni)
Aggregatori e Metaindici
Valdo Pasqui - Corso AIB e Regione Toscana 33Firenze, 17/01/2012
Search
Databaselocale
HarvestingnormalizzazioneindicizzazionededuplicazioneFrbr-izzazione
Siti WebCataloghiDatabaseRepository
esempi PLEIADI http://www.openarchives.it/pleiadi/
OAIster http://www.oaister.worldcat.org/
Citebase http://www.citebase.org/help/
OAI: Registro dei Service Providers http://www.openarchives.org/service/listproviders.html
Valdo Pasqui - Corso AIB e Regione Toscana 34Firenze, 17/01/2012
Context Sensitive Reference Linking NISO OpenURL (Z39.88-2004) I metadati contenuti nel link sono trasportati
ad un resolver che li usa per creare dinamicamente una lista di riferimenti a servizi sensibili al contesto (e.g. la copia dell’articolo della rivista elettronica)
Valdo Pasqui - Corso AIB e Regione Toscana 35Firenze, 17/01/2012
Principio NISO Open URL
Valdo Pasqui - Corso AIB e Regione Toscana 36Firenze, 17/01/2012
(1) LinkOpenURL
Lista di Link a extended services
Base di conoscenza
sui servizi target
Clicksu un link
Redirezioneutente sul target
Rivista
Documentocontiene link
(2)(3)
(4)
Resolver
esempi
Biblioteche di Romagna Scoprirete “Scopri Altro” http://scoprirete.bibliotecheromagna.it/
OPAC Università di Firenzehttp://opac.unifi.it/F
Google Scholar Preferences http://scholar.google.com/scholar_preferences“Library Links” Permette di selezionare il resolver OpenURL preferito
Valdo Pasqui - Corso AIB e Regione Toscana 37Firenze, 17/01/2012
Sequenza interazione ISO ILL tra due biblioteche
Valdo Pasqui - Corso AIB e Regione Toscana 38Firenze, 17/01/2012
ILL-REQUEST
ILL-ANSWER
SHIPPED
RECEIVED
OVERDUE
RETURNED
CHEKED-IN
Bib
Richiedente
Bib
Prestante
Messaggi protocollo ISO ILL
Valdo Pasqui - Corso AIB e Regione Toscana 39Firenze, 17/01/2012
ILL-REQUEST CONDITIONAL-REPLY RECEIVED RETURNED RENEW LOST DAMAGED STATUS-QUERY STATUS-OR-ERROR-REPORT
ILL-ANSWER
SHIPPED RECALL OVERDUE CHECKED-IN RENEW-ANSWER
STATUS-OR-ERROR-REPORT
Stati protocollo ISO ILL
Valdo Pasqui - Corso AIB e Regione Toscana 40Firenze, 17/01/2012
Stati finali o NOT-SUPPLIED la richiesta non può essere servitao RECEIVED nel caso di un documento non restituibile (DD)o RETURNED il documento è stato rispedito al fornitoreo LOST il documento è stato perso
Stati finali NOT-SUPPLIED quando ha risposto con RETRY o UNFILLED SHIPPED nel caso di un documento non restituibile (DD) CHECKED-IN il documento è ritornato indietro dal richiedente LOST il documento è stato perso
Stati transitori o PENDING in attesa dell’item richiesto (o è stato ricevuto un messaggio che dice che è stato spedito o riservato)
Richiedente
Stati transitori o IN-PROCESS Richiesta ricevuta, in corso di trattamento, item ancora non spedito
Per approfondire: servizi ILL italiani Il servizio di prestito interbibliotecario ILL SBN http://www.iccu.sbn.it/opencms/opencms/it/main/illsbn/
Servizio dedicato integrato con OPAC SBN Implementazione ISO ILL in XML Gateway per interagire con sistemi standard ISO ILL (es. Aleph)
NILDE (CNR Area di Bologna) https://nilde.bo.cnr.it/learn.php
Sistema Documentario dell’Area Fiorentina (SDIAF) http://sdiaf.comune.fi.it/prestito.html
Valdo Pasqui - Corso AIB e Regione Toscana 41Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 42Firenze, 17/01/2012
Discover to Deliver (D2D) model (Lorcan Dempsey) http://www.oclc.org/research/presentations/dempsey/accessinst_20020306.ppt
Discover Locate Request Deliver
Use- Search- Browse- Syndicate feeds (RSS, ATOM)
OpenURL resolver- Consultazione - Prestito e ILL- DD- Digital content download
Il processo
Discover. Scoprire che una risorsa esiste Search & browse + syndicated feeds
Locate. Scoprire i servizi disponibili relativi alle risorse scoperte OpenURL resolver, COinS
Request. Richiedere un servizio Deliver. Esecuzione del servizio
ILL, DD, e-contents download
Valdo Pasqui - Corso AIB e Regione Toscana 43Firenze, 17/01/2012
Integrazione orizzontale e verticale
Valdo Pasqui - Corso AIB e Regione Toscana 44Firenze, 17/01/2012
Catena attraversata da destra a sinistra, es.- interrogazione dati circolazione catalogo localeper verifica disponibilità copie - dalla scoperta di un articolo su una rivista fino alla ricerca di quali servizi possono consentire di ottenerlo
L’integrazione di differenti attività in una singola fase del processo, es: - Metasearch per scoprire risorse da varie sorgenti - Delivery, integrazione deiservizi ILL/DD con servizi
di acquisto e pagamento
on-line
La realtà percepita dall l’utente
Valdo Pasqui - Corso AIB e Regione Toscana 45Firenze, 17/01/2012
….interazione con molti “Silos” di dati (diverse interfacce)
Valdo Pasqui - Corso AIB e Regione Toscana 46Firenze, 17/01/2012
Cataloghidella
Biblioteca(risorse
analolgichee digitali)
DataSets
E-journals
InstitutionalRepositories
E-learningCourse
Management
Web(blogs, wiki, images, musica, video, etc.)
Sempre di più Collezioni
Museali
Implicazioni
Libraries remain, however, as an information environment separate from the Web. This makes a difference because the Web is where the majority of information seekers live, work, and play. It is also increasingly the environment where new information is created
The important question now is: how can the library catalog move from being “on the Web” to being “of the Web” ?
Karen Coyle, Understanding the Semantic Web: Bibliographic Data and Metadata, Library Technology Reports, ALA, Volume 46, Number 1 / January 2010http://alatechsource.metapress.com/content/g212v1783607/?v=editorial
Valdo Pasqui - Corso AIB e Regione Toscana 47Firenze, 17/01/2012
Prospettive (1)
“…it’s vital that libraries and publishers explore ways to unlock their content and holdings and make them findable on the open web. Even if all the information on the web can’t be accessed freely, it is still important for users to know it’s there – otherwise it remains lost sales, lost knowledge, or lost value for libraries footing the bill but not seeing the usage”
Andrew Richard Albanese in Reality Checks “ten truths, guesses and warnings about the future of publishing” . netConnect, 4/15/2008 URL: http://www.libraryjournal.com/article/CA6548352.html
Valdo Pasqui - Corso AIB e Regione Toscana 48Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 49
Prospettive (2)
«After a first generation of systems focusing on institutional repositories and digital library applications, and a second generation embracing Web 2.0 techniques like annotations or collaborative filtering, we are currently on the verge of a third generation, which will cover the data-intensive aspects of e-Science and e-Research. This requires a shift from "repository islands" towards distributed, web-oriented, open, and interoperable infrastructures.»Sandy Payette (Executive Director, Fedora Commons, USA) in Pedersen et al. “The Use of Digital Object Repository Systems in Digital Libraries (DORSDL2)” ECDL 2008 Workshop Report, D-Lib Magazine, November/December 2008
Firenze, 17/01/2012
Necessità di integrare le biblioteche nello spazio informativo del Web Interfacce applicative standardizzate Service Oriented Architecture (SOAP) Multicanalità, Mobile e Multimedia Cloud Computing Federated Identity Management Semantic Web
Valdo Pasqui - Corso AIB e Regione Toscana 50Firenze, 17/01/2012
Tendenze (1) Dagli OPAC ai (web-scale) Discovery tools
aggregano e indicizzano dati e metadati, quelli della biblioteca (il catalogo)
…. e quelli degli editori (valore aggiunto, ma anche rischio del “vendor lock-in”)
Forniscono funzionalità avanzate come relevance ranking, facets browsing, social tagging e funzioni per la personalizzazione dell’interfaccia utente
Spesso sono proposti come servizi di tipo Cloud Computing, Software as a Service (SaaS) o come servizi “in hosting”
Espongono Web Services o API che consentono l’integrazione con (altri) servizi locali
Valdo Pasqui - Corso AIB e Regione Toscana 51Firenze, 17/01/2012
Tendenze (2)
Sistemi digestione bibliotecaria di nuova generazione con: Architetture orientate ai servizi (SOA) che
cercano di integrare ed implementare al meglio i workflow degli utenti
Integrabili con altre applicazioni tramite WS Anche questi offerti come servizi Cloud
Computing/hosting, ma esistono anche soluzioni open source
Valdo Pasqui - Corso AIB e Regione Toscana 52Firenze, 17/01/2012
Tendenze (3)
Integrazione con il Web: Architettura del Web (URI, HTTP) Resource Description Framework (RDF)
Grafi e triple soggetto-predicato-oggetto Linked Data Resource Description and Access(RDA)
resource, resource discovery, descriptive data (coppie proprietà/valore), access point control data
Riutilizzo di dati e metadati con tecniche e strumenti di tipo data mashups (Yahoo Pipes, Google Mashups, JackBe) e object reuse and repurposing (ORE)
Valdo Pasqui - Corso AIB e Regione Toscana 53Firenze, 17/01/2012
Dagli OPAC ai Discovery Services
Web scale Discovery Services EBSCO Discovery Service http://ebscohost.com/discovery
Primo Central http://www.exlibrisgroup.com/category/PrimoCentral
Summon di SerialSolutions http://www.serialssolutions.com/discovery/summon/
Due approcci “particolari”: The Open Library : progetto di Internet Archive ispirato dal
principio “one web page for every book ever published” http://openlibrary.org/
LibraryThing : “the world’s largest book club”, consente di recuperare le descrizioni bibliografiche da oltre 690 biblioteche http://www.librarything.com/
Vedi anche LibraryThing for Libraries http://www.librarything.com/forlibraries/about
Valdo Pasqui - Corso AIB e Regione Toscana 54Firenze, 17/01/2012
Per approfondire: Web scale discovery services Demo EBSCO Discovery Service (Flash presentation)
http://www.ebscohost.com/uploads/discovery/flash/CDS_Demo.html
Video ExLibris Primo Central plain and simple http://www.youtube.com/watch?v=fDc6kJo6SX8&feature=player_embedded
Webinar The Summon™ Service to Search the Full Text of the HathiTrust Collection
http://www.serialssolutions.com/resources/detail/the-summon-service-to-search-the-full-text-of-the-hathitrust-collection
Valdo Pasqui - Corso AIB e Regione Toscana 55Firenze, 17/01/2012
Per costruire soluzioni in house
Esistono software open source molto validi che consentono lo sviluppo e la gestione “in house” (p.e. su base consortile) eXtensible Catalog
Java SE JDK, Drupal, SOLR, MySQL, ApacheTomcat VuFind (Villanova University)
Java JDK, PHP, SOLR, MySQL, Apache HTTPo entrambe disponibili sia su piattaforma Linux
che Windows
Le soluzioni comerciali offrono la capacità di acquisire i dati (full text) direttamente dagli editori e di gestire i servizi per conto delle biblioteche/istituzioni
Valdo Pasqui - Corso AIB e Regione Toscana 56Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 57Firenze, 17/01/2012
XC eXtensible Catalog
OAIToolkit
OAIToolkitILS ConnectivitySynchronizedata with XC
NCIPToolkit
NCIPToolkitILS Connectivity- Circ. status- Account info
MSTToolkit
MSTToolkit
Metadata Services- Cleanup- Format Convert
DrupalToolkit
DrupalToolkit
User Interface- Search- Browse
Each toolkit is eXtensible with add-on packages
User Interface FeaturesMore Metadata Services ILS Export ScriptsXSLT Scripts
ILS connectors
http://www.extensiblecatalog.org/sites/default/files/slides/eXtensible_Catalog_tools_for_RDA_FRBR_and_linked_data.pptx
Flusso dei Metadati
Valdo Pasqui - Corso AIB e Regione Toscana 58Firenze, 17/01/2012
XC Metadata Services Toolkit
XC Metadata Services ToolkitXC Metadata Services Toolkit
DC to XCTransformati
on
DC to XCTransformati
on
MARC to XCTransformati
on
MARC to XCTransformati
on
MARCNormalizatio
n
MARCNormalizatio
n
DCNormalizatio
n
DCNormalizatio
n
XC Aggregation
XC Aggregation
XCAuthority
XCAuthority
Clean-up Format conversion
Merge AddIdentifiers
OAI-PMH
MST decides which services andin which order to process incoming records
ILSILS ILSILS IRIRDigital
RepositoryDigital
RepositoryDiscovery Service
Discovery Service
Valdo Pasqui - Corso AIB e Regione Toscana 59Firenze, 17/01/2012
Other XCrecords
MMW
MME
MMM
5. Index4. Aggregate3. Transform
XC Trattamento di un record MARC record
Steps:1. Convert from raw MARC to MARCXML (minor cleanup)2. Normalize MARCXML (major cleanup)3. Transform from MARCXML to XC (FRBRize)4. Aggregate at each FRBR level (match and merge)5. Index records / create WEMs (one for each unique Manifestation)
59
MARC MARCXML(dirty)
MARCXML(clean)
W
E
M
XC
2. Normalize
1. Convert
WEMWEM
Index
Data is ready for searchand faceted browse
XC
merge
W
E
M
match
?
?
?
5. Index4. Aggregate3. Transform2. Normalize1. Convert
Software as a Service (SaaS) in pillole Modalità di realizzazione e fruizione delle
applicazioni in ambito Cloud computing Applicazioni complete (Oracle SaaS platform,
Google Apps, Sales Force Automation di Salesforce, Docs, Moodlerooms, Google Apps Education Edition (GAEE) e Microsoft Live@edu) sono utilizzabili via internet (“in the colud”) usando un normale browser
La riproposizione dell’out-sourcing realizzato (non sempre) in modo da beneficiare delle proprietà del Cloud computing……
Valdo Pasqui - Corso AIB e Regione Toscana 60Firenze, 17/01/2012
Proprietà del Cloud computing Infrastruttura flessibile, scalabile e ridondante
(risorse hw e sw, applicazioni) realizzata con le tecnologie di virtualizzazione e grid computing
Disponibile tramite la rete mediante interfacce programmatiche (API) e interfacce grafiche utente (GUI)
Modelli di pagamento in base all’utilizzo/consumo ("pay as you go“, misurazione)
Può essere ricondotto al modello Utility Computing poiché le risorse di calcolo, di memorizzazione e archiviazione permanente dei dati e le applicazioni sono fruite (a pagamento) come i servizi luce, acqua, gas, fognature)
Valdo Pasqui - Corso AIB e Regione Toscana 61Firenze, 17/01/2012
Scenari
Valdo Pasqui - Corso AIB e Regione Toscana 62Firenze, 17/01/2012
- Gmail- Amazon S3 e EC- Google books
opencloudmanifesto.org Cloud Computing Use Cases White Paper Version 3.0
- Worldcat -> OCLC Web Scale- ExLibris URM- (...Indice SBN ….)
Valdo Pasqui - Corso AIB e Regione Toscana 63Firenze, 17/01/2012
- EBSCO Discovery Service- Summon di SerialSolutions- Primo Central- Google Scholar
- Servizi su base consortile- Servizi di Digital Preservation
LMS realizzati e proposti come SaaS
OCLC WorldShare Management Services “Web-scale management services”: gestione delle risorse ed i servizi della biblioteca secondo il modello SaaS e consente l’integrazione con servizi esterni tramite WS http://www.oclc.org/webscale/default.htm
ExLibris Unified Resource Management Service (URM) “ALMA” “A service-oriented architecture and fully-documented Web services” http://www.exlibrisgroup.com/?catid
={86D863D1-734A-4CBC-9E1F-4AD08536B07D}
Liblime Koha viene offerto da LibLime sulla propria piattaforma Cloud Computing, come servizio in hosting LibLime Koha staff login for Public Libraries
http://www.liblime.com/demosValdo Pasqui - Corso AIB e Regione
Toscana 64Firenze, 17/01/2012
Cloud Comupting: Infrastructure as a Service (IaaS) - un flash
Servizi di memorizzazione permanente dei dati Zotero Server (biblioteca personale, gruppi collaborativi che
condividono le proprie biblioteche) e Zotero Storage (100MB free – 4GB) per i documenti http://www.zotero.org/support/storage
Supporto di archivi digitali (istituzionali) es. i moduli di storage di eptrints.org e di Fedora possono archiviare i contenuti in Amazon S3
DuraCloud sviluppato da DuraSpace http://duraspace.org/duracloud.php software open source per uso locale (Apache Licence vers.2.0), per la modalità hosting occorre contattare duracloud.org
Valdo Pasqui - Corso AIB e Regione Toscana 65Firenze, 17/01/2012
DuraCloud is a service aimed at supporting libraries,
universities, and other cultural heritage organizations that wish to provide perpetual access to their digital content. The service replicates and distributes content across multiple cloud providers and enables the deployment of services to support: access preservation re-use
Valdo Pasqui - Corso AIB e Regione Toscana 66Firenze, 17/01/2012
DuraCloud: Managing durable data in the cloud
Valdo Pasqui - Corso AIB e Regione Toscana 67Firenze, 17/01/2012
Service Oriented Architecture (SOA)
Evoluzione delle architetture distribuite basate sul paradigma richiesta/risposta
La logica applicativa è scomposta e modularizzata in un insieme di singoli “servizi” che vengono presentati a e usati da ad altre applicazioni (client) che li “consumano”
L’interfaccia dei servizi è indipendente dalla loro implementazione (J2EE, .NET): “incapsulamento”
Valdo Pasqui - Corso AIB e Regione Toscana 68Firenze, 17/01/2012
Service Oriented Architecture (SOA)
I processi applicativi (business logic) sono organizzati in servizi che corrispondono ad attività ripetibili e che sono: Esposti, invocati e descritti secondo specifiche standard
condivise (web services) Distribuiti: “service producer” e “service consumer” Posti sotto il controllo di differenti domini/proprietari
(politiche, contratti) Implementati in modo diverso (“opachi”) mantenendo
inalterata l’interfaccia rispetto agli utilizzatori
Valdo Pasqui - Corso AIB e Regione Toscana 69Firenze, 17/01/2012
Valdo Pasqui - Corso AIB e Regione Toscana 70Firenze, 17/01/2012
Gestionecarriera
IdentityManag.Sy
st.
GestionaleBibliotech
eProtocollo(fascicolo individual
e)
Posta elett.(casella)
Portale di Ateneo
Learning Manageme
ntSystem
Servizi Mensa
Servizi esposti esempio
NuovoStudente
Caratteristiche SOA Integrazione tra domini applicativi e funzionali
diversi (e-business, e-government, e-learnig etc.) Combina principi del Business Process Modelling
(BPM), della integrazione tra sistemi e dei Web Services
Proprietà: Favorisce il riuso del software Cooperazione e implementazione dei workflow Flessibilità e adattamento al cambiamento Scalabilità
Valdo Pasqui - Corso AIB e Regione Toscana 71Firenze, 17/01/2012
Web Services in pillole (1)
Un Web service è un componente software progettato per supportatre interazioni interoperabili machine-to-machine tramite rete
Ha una interfaccia descritta in un formato che può essere elaborato automaticamente (machine-processable), espressa tipicamente in WSDL: un “contratto formale” che descrive come usarlo
Altri sistemi interagiscono con il Web service nel modo prescritto dalla sua descrizione usando messaggi SOAP che tipicamente sono trasportati con HTTP e serializzati (sequenza di byte) in XML
Valdo Pasqui - Corso AIB e Regione Toscana 72Firenze, 17/01/2012
Web Services in pillole (2) Simple Object Access Protocol (SOAP)o usato per implementare servizi di tipo richiesta/rispostao trasportato su HTTP e SMTP o i client e i server si scambiano documenti in formato XML la
cui struttura è fissa: Envelope
Header Body (contenuto arbitrario, in XML)
WSDL (Web Services Description Language)o descrive i Web service in sintassi XML:
formato dei messaggi (elementi “type” e “message”) semantica delle operazioni (coppie di messaggi input/output) specifiche di binding con il protocollo SOAP, associazione con
l’indirizzo reale del servizio (URL)
Valdo Pasqui - Corso AIB e Regione Toscana 73Firenze, 17/01/2012
Web Services in pillole (3) REpresentational State Transfer (REST)
Uno stile architetturale in cui l’interazione client-server è priva di stato (stateless) i web services sono visti come risorse e possono essere
identificati dai loro URL non c’è un modo formale per descrivere l’interfaccia dei
web services, quindi i client e i server si accordano a parte (documentazione, esempi, API) sugli schemi che descrivono i dati scambiati (HTML, XML o JSON) e sui modi di elaborarli
i client che vogliono usare tali risorse accedono ad una particolare rappresentazione transferendo sequenze di byte mediante un piccolo e predefinito insieme di metodi remoti che descrivono l’azione da compiere sulla risorsa
c’è una mappatura naturale tra i metodi di HTTP (GET, POST, DELETE, PUT) e le operazioni che i servizi espongonoValdo Pasqui - Corso AIB e Regione
Toscana 74Firenze, 17/01/2012
NLA Service Framework
Valdo Pasqui - Corso AIB e Regione Toscana 75Firenze, 17/01/2012
KUALI Open Library Environment (OLE) OLE will be designed as a single system to manage diverse
collection formats and content, including print, electronic and future information sources. It will not have separate systems for inventory control of print or for licensing control for e-journals.
OLE will support the needs of libraries involved in consortia and other collaborative organizations. OLE’s Service Oriented Architecture (SOA) will allow OLE to fit in well in the enterprise networks of their parent organizations and to evolve gracefully without the need to create or replace large modules as library needs evolve.
OLE will use open, flexible technology to produce a community-sourced alternative to current legacy automation components, including Integrated Library Systems (ILS) and electronic resource management (ERM) systems.
OLE will automate core library functions in a way suited to modern workflows and that interoperates with business and content applications beyond the library. Libraries control the design of OLE, ensuring that it supports our core mission.
Valdo Pasqui - Corso AIB e Regione Toscana 76Firenze, 17/01/2012
Per approfondire: SOA e le biblioteche E-Framework for education and research: The
Service Oriented Approach Video http://www.e-framework.org/Default.aspx?tabid=674
KUALI OLE http://kuali.org/ole
Tempistica sviluppo e rilascio 2011-2012 http://kuali.org/OLE/Timeline
OLE Reference Model http://kuali.org/ole/modules
Test Drive vers. 0.3 http://demo.ole.kuali.org/ole-demo/portal.jsp Select and acquire library materials and provide auditing trails for all
purchases Provide a flexible document store as a primary storage component for all
library items owned and purchased by the library Provide faceted searching for internal library management of all owned
content Provide flexible workflows for library supply chain automation and
management
Come opera la piattaforma OCLC WorldShare http://www.oclc.org/worldshare-platform/howitworks/default.htm
Valdo Pasqui - Corso AIB e Regione Toscana 77Firenze, 17/01/2012
Necessità di interfacce applicative standardizzate
OASIS (Organization for the Advancement of Structured Information Standards) Search Web Services (SWS) evoluzione di Z39.50
OAI Object Reuse and Exchange (ORE)o OAI-PMH, RDF, XML etc…
OCLC Web Serviceshttp://www.oclc.org/developer/webservices
Valdo Pasqui - Corso AIB e Regione Toscana 78Firenze, 17/01/2012
OASIS Search Web Services (SWS)http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=search-ws
Un protocollo astratto Server Datastore
Abstract item, Response item,
searchRetrieve operation searchRetrieve request, searchRetrieve response Resultset Model
CQL Scan Explain
Valdo Pasqui - Corso AIB e Regione Toscana 79Firenze, 17/01/2012
Evoluzione dell’approcci
oZ39.50
OASIS Search Web Services (SWS)Specifiche operative
SRU (Search Retrieve via URL) [1.2] e 2.0 include facets, stylesheets rendering, trasporto su HTTP Get e Post, SOAP
Le risposte seguono specifici schemi XML ma possono essere mappate anche nei formati ATOM, JSON, RSS 1.0 o 2.0
Può essere usato “any appropriate query language” ma è richiesto il Contextual Query Language, CQL 2.0
Scan Operation
Valdo Pasqui - Corso AIB e Regione Toscana 80Firenze, 17/01/2012
Contextual Query Language “Context” perchè ogni elemento del linguaggio
(indici, operatori, etc.) è contestualizzato secondo il principio “searching by semantics and context, rather than by syntax”
I contesti sono legati a specifiche comunità, denotati da un prefisso e identificati da un URI
Un contesto definisce indici, relazioni, modificatori: CQL, Sort, Dublin Core, Bib, Relevance Rankingo http://www.loc.gov/standards/sru/resources/context-sets.htmlo http://www.loc.gov/standards/sru/resources/index.html
Valdo Pasqui - Corso AIB e Regione Toscana 81Firenze, 17/01/2012
I principi dell’ architettura WWW:URI-Resource-Representation
Identificazione – URI (Uniform Resource Identifier) usati per identificare le risorse [RFC3986]
Interazione – attraverso protocolli standard (scambio di messaggi che soddisfano sintassi e semantiche ben definite es. HTTP, FTP, SMTP, SOAP)
Formati - un numero limitato e ben definito di formati per la rappresentazione dei dati e dei metadati che possono essere trasmessi
Valdo Pasqui - Corso AIB e Regione Toscana 82Firenze, 17/01/2012
I principi dell’ architettura WWW:rappresentazione delle risorse
Risorsa - ogni entità che può essere identificata da un URI
Rappresentazione – una sequenza di dati che codificano informazioni sullo stato di una risorsa nel momento in cui il suo identificatore (URI) viene dereferenziato (ovvero quello che si ottiene dereferenziando l’URI)
Dereferenziazione = accedere a una rappresentazione di risorse identificate da un URI
Valdo Pasqui - Corso AIB e Regione Toscana 83Firenze, 17/01/2012
Uniform Resource Identifier uniform indica la possibilità di usare differenti tipi
di identificatori nello stesso contesto, adottando convenzioni sintattiche comuni e supportando nuovi generi di identificatori. La sintassi standard è:<scheme>:<scheme-specific-part>
<scheme>://<authority><path>?<query>http://www.unifi.it/https://dspace-unipr.cilea.it/simple-search?query=tammaro&submit=Go
mailto:[email protected]
doi:10.1045/dlib.magazine
resource è ogni oggetto/entità identificabile (e.g. un documento elettronico, un’immagine, un servizio, una collezione di risorse, una persona) anche non “recuperabile” (retrievable) dalla rete
Valdo Pasqui - Corso AIB e Regione Toscana 84Firenze, 17/01/2012
Uniform Resource Identifier: a cosa servono Gli “(User) Agents” usano un URI per
accedere la risorsa referenziata e Recuperarne una rappresentazione Aggiungere o modificare una rappresentazione
della risorsa Cancellare qualcuna o tutte le rappresentazioni
di una risorsa L’accesso può avvenire attraverso gateways, proxies,
caches e servizi di risoluzione dei nomi che sono indipendenti dal protocollo associato allo “scheme name” dell’URI
Il contesto determina quali modalità usare Separazione tra identificazione e interazione
Valdo Pasqui - Corso AIB e Regione Toscana 85Firenze, 17/01/2012
Web Semantico Resource Description Framework (RDF)
http://www.w3.org/RDF/ Predicati rappresentati come triple e grafi,
composti da:• Soggetto (es. risorsa) nodo• Predicato (es. “creator”) arco• Oggetto (es. “Miky Mouse”) nodo• Tutti identificati da un URI (Uniform Resource Identifier)
Modello base dei Linked Data Tutorial: Introducing RDF/XML
http://www.linkeddatatools.com/introducing-rdf-part-2 Tim Berners-Lee Linked Data
http://www.w3.org/DesignIssues/LinkedData.html
Valdo Pasqui - Corso AIB e Regione Toscana 86Firenze, 17/01/2012
Esempio tratto da RDF Primer
Valdo Pasqui - Corso AIB e Regione Toscana 87Firenze, 17/01/2012
Identity management
Valdo Pasqui - Corso AIB e Regione Toscana 88Firenze, 17/01/2012
Controllo dell’accesso
Il processo per stabilire se un utente (o un servizio secondo la logica orientata ai servizi) può usare una risorsa
Serve a garantire che l’utilizzo delle risorse di un sistema informativo possa avvenire solo da parte di entità autorizzate
“risorsa” è un concetto da intendere in senso ampio: server, sottosistemi, apparati di rete, applicazioni, servizi, funzioni, dati, metadati, oggetti digitali……
Valdo Pasqui - Corso AIB e Regione Toscana 89Firenze, 24/11/2010
Definizioni
“a process by which use of system resources is regulated according to a security policy and is permitted by only authorized entities” RFC 2828-Internet Security Glossary, May 2000, URL: http://www.ietf.org/rfc/rfc2828.txt
"The prevention of unauthorized use of a resource, including the prevention of use of a resource in an unauthorized manner“ ISO/IEC 7499-2 OSI Reference Model Part 2: Security Architecture"
Valdo Pasqui - Corso AIB e Regione Toscana 90Firenze, 24/11/2010
Ambito di applicazione nelle Biblioteche Accesso ai servizi:
circolazione (prestito locale, ILL & Document Delivery)
prenotazione (testi, posto di lavoro) spazio personale nel portale/OPAC servizi interoperanti (SOA, Cloud)
Accesso alle risorse: risorse digitali (e-journals, e-books) record bibliografici (esportazione)
Valdo Pasqui - Corso AIB e Regione Toscana 91Firenze, 24/11/2010
Finalità Identificare gli utenti: riconoscere chi utilizza i servizi,
contestualizzazione, fornire servizi aggiuntivi, spazio personale
Tenere traccia di chi utilizza le postazioni di rete Soddisfare le politiche commerciali degli Editori Garantire il rispetto dei diritti di proprietà intellettuale Nei Repository digitali, inclusi quelli di tipo istituzionale,
non tutte le risorse possono essere rese accessibili a tutti gli utenti (demitizzare Open Access)
Autenticazione servizi interoperanti
Valdo Pasqui - Corso AIB e Regione Toscana 92Firenze, 24/11/2010
IP filtering: ormai inadeguato Meccanismo più semplice e diffuso, adatto per
l’accesso “in-campus” a risorse locali o remote (e.j. e-journals)
Si fonda sul controllo degli indirizzi di rete (IP address) dei server e delle postazioni dilavoro
Inappropriato/insufficiente: per le esegenze di operare in modo flessibile e
garantire agli utenti uno spazio cooperativo per operare in mobilità per supportare l’interoperabilità a livello di
processi (SOA, Web-services)
Valdo Pasqui - Corso AIB e Regione Toscana 93Firenze, 24/11/2010
Le due fasi canoniche
Valdo Pasqui - Corso AIB e Regione Toscana 9494
Authentication
Authorization
OK
OK
Accessoaccordato
Accessonegato
Obbligatoria trannequando si prevede/ammette
l’accesso “anonimo”
Di solito combina:• utenti/gruppi• risorse • permessi
KO
KO
Firenze, 24/11/2010
Autenticazione Il processo per verificare l’identità di
un’entità (persona fisica, servizio/sistema) che vuole accedere ad un sistema o ad un servizio
“The process of verifying an identity claimed by or for a system entity” (IETF RFC 2828-Internet Security Glossary)
“any process by which you verify that someone is who they claim they are” (Apache)
Valdo Pasqui - Corso AIB e Regione Toscana 95Firenze, 24/11/2010
Le fasi dell’autenticazioneIdentificazione
Presentare un identificatore, informazioni che attestano il legame tra l’entità e l’identificatore,
Verifica Stabilire la veridicità della identità dichiarata
Valdo Pasqui - Corso AIB e Regione Toscana 96
Verificare qualcosa che l’utente/entità: conosce (user e password, PIN) possiede (certificato digitale, una smart card, una carta dei servizi, una chiavetta USB) è (tecniche biometriche: retinal scan, iride, DNA)
Firenze, 24/11/2010
User-id & password User-id (or username): lunghezza, scadenza,
auto-registrazione Password: lunghezza minima, composizione,
obbligo cambiamento ogni ”n” giorni, gestione delle password dimenticate
Implementazione diretta con database o server LDAP sono usati come repository per le credenziali (userid/password) oppure delegata a un Identy Management System esterno (e.g. LDAP)
Valdo Pasqui - Corso AIB e Regione Toscana 97
Qualcosa che tu conosci
Firenze, 24/11/2010
IP filtering + user/password => Authenticated Proxy Può essere usato sia da postazioni di lavoro
in-campus che out-campus (e.g. Internet Provider)
L’utente deve autenticarsi al Proxy Si presenta all’esterno con l’IP del Proxy
dunque è un modo per consentire l’accesso a risorse esterne (e.g. e-journals e banche dati bibliografiche) in modo controllato
Può implementare “blacklists” e caching delle pagine Web
Valdo Pasqui - Corso AIB e Regione Toscana 98Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 99
FirefoxProxysetting
Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 100
Internet ExplorerProxysetting
Firenze, 24/11/2010
Esigenze derivate dal cambiamento Ridurre il numero degli identificatori e
delle password da usare/ricordare Autenticarsi una sola volta alle applicazioni
che si usano p.e. durante la giornata Assicurare livelli di privacy agli utenti Ridurre la duplicazione ed il trasferimento
di dati necessari alla gestione del processo di autenticazione
Consentire l’integrazione tra servizi (SOA, SaaS)
Valdo Pasqui - Corso AIB e Regione Toscana 101Firenze, 24/11/2010
Evoluzioni
Adozione del modello e delle tecniche Single Sign On (adatto nel contesto intranet e portali aziendali)
Delegare la verifica dell’identità a servizi specializzati presso i quali l’utente è accreditato e registrato (es. di tipo istituzionale) a cui spetta il compito di gestire le credenziali e le sessioni di autenticazione
Valdo Pasqui - Corso AIB e Regione Toscana 102Firenze, 24/11/2010
Single Sign On (SSO)
L’ utente si autentica una sola volta Dopo la prima autenticazione con
successo ad un servizio l’utente può accedere ad altri servizi e risorse senza ripetere il login (autenticazione)
Molto usato nei contesti aziendali (Portali)
Viene stabilita e gestita una sessione locale con il client (browser) dell’utente, di solito per mezzo di un SSO session cookie (all’applicazione viene passato un token che attesta l’autenticazione/identificazione)
Attenzione alla sicurezza !Valdo Pasqui - Corso AIB e Regione Toscana 103Firenze, 24/11/2010
Single Sign-On in pillole: Oracle Application Server (1)
Valdo Pasqui - Corso AIB e Regione Toscana 104
1. L’ Utente tenta di accedere
2. L’Utente è rediretto al server single sign-on 2.1 Il server chiede le credenziali all’utente2.2 Dopo aver verificato le credenziali il server setta il SSO session cookie e passa il token di autenticazione alla Applicazione
3. L’Applicazione manda indietro il contenuto richiesto
Firenze, 24/11/2010
Oracle Application Server Single Sign-On (2)
Quando l’utente tenta di accedere ad un’altra Applicazione:1. Viene rediretto al single sign-on server.2. Il server non chiede all’utente le credenziali
ma usa il SSO session cookie per validare la sua identità.
3. Il server passa un token di autenticazione alla Applicazione.
4. L’Applicazione fornisce il contenuto richiesto
Valdo Pasqui - Corso AIB e Regione Toscana 105Firenze, 24/11/2010
Delega e Federated Identity Management Identity Provider (IdP): un’entità “autoritativa” che
registra i propri utenti e ne gestisce l’identificazione, emette Asserzioni (metadati) sul soggetto identificato
espresse in XML secondo il Security Assertion Markup Language (SAML)
Service Provider: formano un dominio o federazione con le istituzioni che detengono gli IdP e delegano a questi il compito di autenticare gli utenti
Gli utenti: interagiscono con i Web site, i servizi e le applicazioni (SP) MA si autenticano usando le credenziali della propria istituzione, di solito una sola volta per sessione di lavoro (one-time authentication)
Valdo Pasqui - Corso AIB e Regione Toscana 106Firenze, 24/11/2010
FederazioneInsieme di organizzazioni che aderiscono ad un insieme condiviso di regole e standard e che confidano (“trust”) tra di loro sul piano legale e e tecnicoun tutorialhttp://www.switch.ch/export/sites/default/uni/security/aai/event/aai-info-day-2009/slides/AAI-ID09-10-Tutorial.pdf
Valdo Pasqui - Corso AIB e Regione Toscana 107Firenze, 24/11/2010
Vantaggi per le Biblioteche Utilizzo delle postazioni di lavoro fisse e
dei punti di accesso mobili (wi-fi) da parte degli utenti
Semplificare e migliorare la gestione del controllo degli accessi
Offrire servizi a comunità federate (es. università, comuni, enti e istituzioni)
Accesso a risorse digitali distribuite Integrazione con servizi di e-commerce
Valdo Pasqui - Corso AIB e Regione Toscana 108Firenze, 24/11/2010
Approccio di Shibbolet
L’utente utilizza le proprie credenziali (userid e password) per accedere alle risorse offerte dai Service Provider (disponibili in base agli accordi sottoscritti) dalla istituzione/organizzazione di appartenenza
L’Identy Provider locale invia l’insieme minimale di metadati che servono al Service Provider per gestire l’autenticazione ed anche l’auorizzazione
Localmente ciascun IdP adotta i servizi e le teconolgie di sicurezza ritenute più idonee
Shibbolet permette il rilascio controllato dei metadati relativi agli utenti consentendo di tutelarne la privacyValdo Pasqui - Corso AIB e Regione
Toscana 109Firenze, 24/11/2010
Shibboleth http://shibboleth.internet2.edu/
Organizational and Federated Single-SignOn
L’organizazione cui appartiene l’utente deve essere riconosciuta (acknowledged)
L’Autenticazione avviene attraverso un Identity Provider, il Service Provider chiede attributi espressi in SAML 2.0, usando HTTP redirect
Gli attributes sono quellidefiniti nella LDAP eduPerson object class http://www.educause.edu/eduperson
Software Open Source NSF Middleware Initiative (NMI): http://www.nmi-edit.org
Valdo Pasqui - Corso AIB e Regione Toscana 110Firenze, 24/11/2010
© 2010 SWITCH
Shibboleth Components
DiscoveryService
ovunque
home organizationes. Biblioteca, Università
service organizationes. Editore, banca dati, altra istituzione,
ServiceProvider
AuthenticationSystem
UserInformation
IdentityProvider
Valdo Pasqui - Corso AIB e Regione Toscana
Firenze, 24/11/2010111
Tecnica usata: HTTP redirection
Gli status codes di tipo Class 3XX “indicates that further action needs to be taken by the user agent in order to fulfill the request”
302 Found: “The requested resource resides temporarily
under a different URI” The temporary URI is given by the Location
field in the response The user agent performs a get on this URI
Valdo Pasqui - Corso AIB e Regione Toscana 112Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 113
Shibboleth
asserzioni
SAML
Firenze, 24/11/2010
Risorsacui si accede
Shibbolet access/login http://www.switch.ch/aai/demo/medium.html
Valdo Pasqui - Corso AIB e Regione Toscana 114
Where are you from?opzionale , usato per determinare l’Identity Providerdell’Utente
User
Identity Provider
Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 115Firenze, 24/11/2010
Identy Management Federato in Italia Federazione IDEM-GARR (IDEntity
Management per l'accesso federato) https://www.idem.garr.it/
Tecnologia open source Shibbolet (IdP,SP, WAYF) promuove l’infrastruttura per l’autenticazione e l’autorizzazione federata per gli Enti di Formazione Universitaria e di Ricerca
Valdo Pasqui - Corso AIB e Regione Toscana 116Firenze, 24/11/2010
Standardizzazione IDEM Specifiche tecniche per la compilazione e l'uso
degli Attributi tra i Membri della Federazione l'Organizzazione di Appartenenza dovrebbe trasferire solo
quegli attributi che sono stati giudicati meritevoli di trasferimento (ARP) in conformità alla legislazione vigente
Pubblica i Metadati della Federazione che contengono le informazioni relative a tutti i Service Provider e Identity Provider partecipanti
Guide di installazione e file di configurazione Discovery Service (WAYF) Norme e regolamentazione per partecipare alla
FederazioneValdo Pasqui - Corso AIB e Regione
Toscana 117Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 118Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 119Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 120Firenze, 24/11/2010
IDEM – Risorse per le bibliotechehttps://www.idem.garr.it/index.php/it/servizi/sp
Nilde Utenti CNR ScienceDirect Elsevier Scopus Elsevier SpringerLink ISI WebOfKnowledge (in test) Emeroteca Virtuale del CASPUR IEEE Xplore (in test) JSTOR (previsto)
Esempio Università di Firenze: https://shibboleth.unifi.it/info/index_risorse.html
Valdo Pasqui - Corso AIB e Regione Toscana 121Firenze, 24/11/2010
Altre iniziative italiane
CAR-INF3 Sistema Federato interregionale di Autenticazione progetto “Interoperabilità e Cooperazione Applicativa in
rete tra le regioni” (ICAR) coinvolge 16 Regioni ed una Provincia autonoma http://www.progettoicar.it/ViewCategory.aspx?catid=568a23f3c02e4fada265101e3008bd52
FedERa: Federazione degli Enti dell'Emilia-Romagna per l'Autenticazione Regione Emilia Romagna http://www.regionedigitale.net/progetti-piter/infrastrutture-per-laccesso-e-
loperativita/federa-federazione-degli-enti-dellemilia-romagna-per-lautenticazione
Valdo Pasqui - Corso AIB e Regione Toscana 122Firenze, 24/11/2010
OpenId: condivisione di user e password tra siti web
L’utente finale utilizza uno dei propri “social id” es. di Google, Yahoo!, MySpace, Flickr, PayPal, SourgeForce
OpenId Provider (OP) è uno dei servizi che gestisce l’account dell’utente
Il Service Provider, detto anche Relying Party (RP), dopo aver ricevuto l’OpenId immesso dall’utente cerca ed individua l’OP e redirige l’utente (browser) all’OP dove avviene l’autenticazione, poi l’OP redirige l’utente (browser) al SP con una asserzione che dice che l’autenticazione è avvenuta con successo o un messaggio di autenticazione fallita
Valdo Pasqui - Corso AIB e Regione Toscana 123Firenze, 24/11/2010
OpenID
Non prevede federazioni e sistemi istituzionali Adatto per ambiente “social” Non usa SAML
Evoluzioni: OpenID Connect, uso del protocollo OAuth 2.0 http://openid.net/connect/
Per approfondire: Come si usa : http://openid.net/ Directory di OpenID enabled sites http://liquidid.net/topsites.php
Valdo Pasqui - Corso AIB e Regione Toscana 124Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 125Firenze, 17/01/2012
Springnote free online notebookhttp://www.springnote.com/
LiveJournal
Valdo Pasqui - Corso AIB e Regione Toscana 126Firenze, 17/01/2012
http://sourceforge.net/apps/trac/sourceforge/wiki/OpenID
Progetto EU Stork https://www.eid-stork.eu/
Stabilire una “European eID Interoperability Platform” che permetterà ai cittadini di stabilire nuove “e-relations” transfrontaliere presentando la loro “electronic IdeneID” (eID) nazionale
5 sottoprogetti pilota tra cui “Mobilità studentesca” e “Electronic delivery” sicuro
Approccio “user centrico” l’utente controlla quali dati inviare al Service Provider
Valdo Pasqui - Corso AIB e Regione Toscana 127Firenze, 17/01/2012
Il workflow di Stork
Valdo Pasqui - Corso AIB e Regione Toscana 128Firenze, 17/01/2012
Pan European Proxy Service
Member State
Identity Provider
Stork: per approfondire I progetti pilota https://www.eid-stork.eu/pilots/index.htm
Video Mobilità studentesca o https://www.eid-stork.eu/#o https://www.youtube.com/watch?
v=c_KDdrfobBg&feature=player_embedded#!
gli studenti stranieri con credenziali fornite dalle nazioni partecipanti potrannoo registrarsi come studenti Erasmus nelle università coinvolte nel pilotao ottenere l’accesso ai servizi amministrativi on-line offerti dalle
università usando le proprie credenziali nazionali (es. carte d’identità elettroniche, certificati digitali) per l’autenticazione attraverso meccanismi di single sign-on
Valdo Pasqui - Corso AIB e Regione Toscana 129Firenze, 17/01/2012
Stork: per approfondire “Cross Border eDelivery”
o https://www.eid-stork.eu/pilots/pilot4.htm
I cittadini di uno Stato potranno:o Registrarsi ai servizi/portali eDelivery diun altro Stato
usando le proprie identità nazionali (es. carte d’identità elettroniche, certificati digitali)
o ricevere “deliveries” da servizi di Stati esteri affiliati
Valdo Pasqui - Corso AIB e Regione Toscana 130Firenze, 17/01/2012
Appendice: SAML
Valdo Pasqui - Corso AIB e Regione Toscana 131Firenze, 17/01/2012
Security Assertion Markup Language(SAML) Un “framework for exchanging
security information” tra partner online Definisce la sintassi e la semantica di
eleaborazione delle asserzioni emesse su un soggetto da una “system entity”
http://www.oasisopen.org/committees/security http://saml.xml.org/ OASIS (Organization for the Advancement of
Structured Information Standards) not-for-profit consortium, fondato nel 1993, comprende oltre 600 organizzazioni http://www.oasis-open.org/
Valdo Pasqui - Corso AIB e Regione Toscana 132Firenze, 24/11/2010
SAML: entità e asserzioni
System entity: is an automated process or set of processes, a subsystem, a person or group of persons that incorporates a distinct set of functionality
Assertion: a package of information produced by a SAML authority about: an act of authentication performed on a subject attribute information about the subject authorization data applying to the subject with
respect to a specified resourceValdo Pasqui - Corso AIB e Regione
Toscana 133Firenze, 24/11/2010
SAML: gli attori
Principal, a system entity whose identity can be authenticated
Service Provider, a system entity which provides services to principals or other system entities
Identity Provider, a kind of service provider that creates, maintains, and manages identity information for principals and provides principal authentication to other service providers within a federation, such as with web browser profiles.
Valdo Pasqui - Corso AIB e Regione Toscana 134Firenze, 24/11/2010
SAML: implementazione
Asserzioni e messaggi del protocollo sono codificati in XML
Il trasporto avviene con richieste HTTP POST (su SSL 3.0 or TLS1.0) o messaggi SOAP XML-encoded
Sono stati definiti alcuni profili per l’uso dei protocolli e delle asserzioni SAML in specifici casi e per l’interoperabilità: Web Single Sign-On (web browser, enhanced client or
proxy, identity provider discovery) Identity Federated Management Attribute profiles (basic, X.500/LDAP, UUID, XACML)
Valdo Pasqui - Corso AIB e Regione Toscana 135Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 136
Validità della asserzione
L’autenticazione originaria è avvenutacon un meccanismo “password-protected transport” nella data e ora indicati
Assertion example
Firenze, 24/11/2010
Name identifiers <nameId> element in <Subject> Email address X.509 subject name Windows domain qualified name Kerberos principal name Entity identifier Persistent identifier
if created by an IdP they are usually established for use only with a single
Transient identifier “one-time use” identifier created at the IdP for
anonymityValdo Pasqui - Corso AIB e Regione
Toscana 137Firenze, 24/11/2010
Attributi The “Attribute” element has three xml
attributes: Name
urn:oasis:names:tc:SAML:2.0:attrname-format:uri urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500 urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML
urn:oasis:names:tc:SAML:2.0:attrname-format:basic NameFormat FriendlyName
Contains an unlimited sequence of <AttributeValue> elements
Valdo Pasqui - Corso AIB e Regione Toscana 138Firenze, 24/11/2010
Valdo Pasqui - Corso AIB e Regione Toscana 139
X.500/LDAP Attribute Profile
SAML Basic Attribute Profile
structured data type
Firenze, 24/11/2010
Top Related