23
Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Embed Size (px)

Citation preview

Page 1: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Web SSO & Tools

LNF – INFN

Workshop Calcolo e Reti INFN

06 Giugno 2006 – Otranto

Dael Maselli

Page 2: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Strumenti “Fatti in Casa”

• Authentication + Single Sign On (CASSiO)

• TTicket

• L2 Find Node

• Racks

• Grapho

• DBquery

• Gestione Turni GEPS

• Domain WebServices Portal

Page 3: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

CASSiO (1) – Maselli, Pistoni

Cookie-based Authentication and Single Sign On

Tempo fa e’ stato sviluppato ai LNF un sistema di Autenticazione e Single Sign On per alcune applicazioni WEB scritte in PHP o Perl.

Con il tempo la procedura e’ stata aggiornata e resa il piu’ portabile possibile.

I metodi di autenticazione sono aumentati ed e’ stata prevista l’identificazione di utenti INFN al di fuori dei LNF.

Si propone come metodo di autenticazione e SSO per tutte le applicazioni web rese disponibili ai LNF e non.

Page 4: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

CASSiO (2) – Maselli, Pistoni

• Autenticazione• Kerberos 5• AFS• NIS• DB MySQL• Certificato x509

• Librerie Single Sign On• PHP• Perl• ASP.NET

Page 5: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

CASSiO (3) – Maselli, Pistoni

• Il sistema si basa su 2 cookie:

1) <AuthMethod>.<User>@<Realm>:<IP>:<AuthTime>

2) Contiene un md5 del cookie 1 e di un file (Cookie Key)

leggibile solo dal www server e non esportato via http.

• Solo chi conosce il contenuto del Cookie Key e’ in grado di impostare o controllare l’autenticazione.

• Funziona con tutti i SO e Browser che supportino SSL e Cookie.

Page 6: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

CASSiO (4) – Maselli, Pistoni

• Utilizzato dalla quasi totalita’ degli script fatti in casa ai LNF

• Il DataWeb INFN sta sviluppando le nuove applicazioni e aggiornando le vecchie per supportarlo

• Programmazione semplificata di nuovi script indipendentemente dal SO e server HTTP

• Cookie impostati per il dominio infn.it, quindi leggibili da tutti i nodi INFN

Page 7: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

CASSiO (5) – Maselli, Pistoni

• Configurando un’opportuna distribuzione della Cookie Key e’ possibile riconoscere l’autenticazione da tutti i siti INFN

• Librerie facilmente riscrivibili in altri linguaggi

• Possibilita’ di integrazione in software di terze parti

• Possibilita’ di sviluppo di nuovi metodi di autenticazione come OTP token, SMS ecc.

Page 8: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

TTicket – Maselli

• TTicket e’ il sistema di Trouble Ticketing sviluppato ai LNF dal 2002, gia’ presentato al Workshop di Paestum 2003.

• Viene ultilizzato anche in altre sedi INFN

• Completamente integrato con CASSiO (TTicket ver >= 2.5.6)

• Per ulteriori informazioni rimando a:

http://www.lnf.infn.it/~dmaselli/tticket

Page 9: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

L2 Find Node (1) – Maselli

• Permette di individuare dove sia connesso un nodo

• Visualizza il percorso per raggiungerlo a partire da uno switch

• Script Perl con interfaccia PHP

• Utilizza query SNMP a MIB Cisco

• Non e’ mai stato provato su altri switch

• Configurazione quasi nulla

Page 10: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

L2 Find Node (2) – Maselli

[dmaselli@lxcalc5:~]> l2findnode swcalcfarm2 xtermpc2

Host Name: xtermpc2.lnf.infn.itHost IP: 193.206.86.217Status: UP.Layer3 from: swcalc1Mac-addr: 00-02-1b-f2-53-82Vlan: default ( 1 )

swcalcfarm2 - Po1 ( Gi1/0/27 Gi1/0/28 ) | swcalc1 - Gi8/13 | swae2a - 2/8 | swaea75 - Fa0/19 | xtermpc2

Page 11: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Racks & Grapho – Maselli

Racks e Grapho sono due piccoli script php che semplificano la vita quando si gentiscono molti nodi e ci si deve collegare in console agli host.

• Racks, opportunamente configurato genera una pagina con la rappresentazione delle macchine nei rack in tabelle html e permette di collegarvisi in ssh, telnet o http.

• Grapho costruisce un grafo in html/css utile per raffigurare la struttura della rete, permette di accedere agli apparati in telnet o ssh.

Page 12: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Dbquery.pl (1) – Pistoni

• Il Database query e’ uno script che realizza una comoda interfaccia web per l’interrogazione e l’amministrazione dei dati in piu’ database

• Autenticazione integrata (Certificato, Kerberos, local DB) tramite CASSiO

• Vari livelli di autorizzazione di accesso ai dati• Admin, trusted (possono leggere e scrivere nel db)• Utenti ‘abilitati’ (possono richiedere modifiche)• Utenti sola lettura• Utenti ‘disabilitati’

(gestione delle wildcard )

Page 13: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Dbquery.pl (2) – Pistoni

• Le interrogazioni al DB sono semplici, ma molto potenti• I valori dei campi visualizzati possono essere facilmente

definiti come web link• in quanto campi speciali o amministrativi• in quanto valori per effettuare nuova ricerca nello stesso o in un

altro database

• Definizione di livelli di protezione fino al singolo campo della tabella del DB

• Personalizzazione dell’output• Ai LNF vengono gestiti tutti i DB del Calcolo: Phonebook

interno, Run Coordinator di Dafne, Rubrica ditte, Username e gruppi, Nodi di rete, Rembo, Contratti di manutenzione, etc.

Page 14: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Domain WebServices Portal (1) (Amanzi)

Gruppo di applicazioni in ASP.NET per il:

• Serving dei software kits comuni e del relativo supporto all’installazione

• Monitoraggio e Gestione delle code relative al servizio di stampa centralizzato

LA SOLUZIONE DATABASE CENTRALIZZATO

Memorizzare:• Le informazioni relative ai servizi esportati dal portale• I contenuti necessari a generare le pagine web• I parametri funzionali di stato dei servizi• I log dei servizi e le azioni intraprese dall’utente

LA SOLUZIONE DATABASE CENTRALIZZATO

Memorizzare:• Le informazioni relative ai servizi esportati dal portale• I contenuti necessari a generare le pagine web• I parametri funzionali di stato dei servizi• I log dei servizi e le azioni intraprese dall’utente

Page 15: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Aspetti implementativi per CASSiO:

• Funzioni esportate da unico modulo VB basato su classi .Net Framework 1.0 SP1 (compatibile 1.1 e sup.)

• Controllo validita’ autenticazione pre-esistente, login e logout utente

• Rilascio autorizzazioni di alto livello per la cancellazione dei printing pending jobs in base alla validazione del metodo di autenticazione CASSiO: per tale funzionalita’ sono autorizzati solo gli utenti che si autenticano Kerberos/AFS o mediante certificato X509 INFN

Domain WebServices Portal (2) (Amanzi)

Page 16: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (1) – Angius

• La Squadra “GEPS” e’ stata istituita per la Gestione delle Emergenze e del Primo Soccorso

• Presso i LNF ogni turno giornaliero e’ composto da 6 persone piu’ 2 riserve

• In totale gli abilitati ai turni GEPS sono circa 50 persone

Page 17: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (2) – Angius

• L’esigenza era di disporre di una applicazione web che rendesse piu’ semplice la composizione e la gestione del calendario turni per un gruppo cosi’ numeroso ed eterogeneo

• Realizzata inizialmente per la sola squadra LNF e’ stata poi implementata con due setup differenti (numero componenti squadra, riserve, constraint di prenotazione, etc.) per le due diverse squadre GEPS dei LNF e AC

• In produzione da Ottobre 2004

Page 18: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (3) – Angius

• Realizzata in PHP, utilizza un DB su MySQL

• Autenticazione integrata con il sistema di CASSiO attivo nei Laboratori Nazionali di Frascati e Amministrazione Centrale

• Per i dati anagrafici fa riferimento al Phonebook gestito dall’applicazione DBQuery

• Tutte le operazioni di inserimento, modifica, cancellazione di turni e utenze sono registrate

Page 19: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (4) – Angius

• Sono previsti piu’ livelli di accesso:• “visitatore autenticato”

• qualsiasi account LNF/AC• puo’ consultare il calendario delle prenotazioni

• “utente” • effettivo GEPS• puo’ prenotarsi e gestire le proprie prenotazioni

• “admin” • puo’ inserire nuovi effettivi, modificarne lo stato,

“impersonare” qualsiasi utente, definire il capoturno, rimuovere tutte le prenotazioni relative ad un giorno o ad un intero mese

Page 20: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (5) – Angius

• L’applicazione e’ divisa in diversi quadri:• Quadro principale mensile per la gestione delle prenotazioni• Quadro giornaliero con ulteriori dati dei componenti la squadra

(telefono, tenocode, email, edificio, note)• Riepilogo Utente

• Gli “admin” inoltre possono consultare i quadri di “log” per le modifiche ai turni e alle utenze e accedere ad un quadro di accounting con i turni effettuati su base mensile o annuale dalle varie utenze

• Un job a cron, nei giorni lavorativi, provvede ad inserire in turno le riserve in caso di assenze e ad inviare via email un memorandum ai componenti della squadra in turno per il giorno lavorativo successivo

Page 21: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (6) – Angius

Page 22: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

GEPS (6) – Angius

• Quadro Mensile

• Versione “Admin”

Page 23: Web SSO & Tools LNF – INFN Workshop Calcolo e Reti INFN 06 Giugno 2006 – Otranto Dael Maselli

Domande ?