Sistemi informativi e Telemedicina Anno Accademico 2008-2009 Prof. Mauro Giacomini

Documenti analoghi
Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Progetto di Ingegneria del Software 2. SWIMv2

REOL-Services Quick Reference Ver. 1.1 Tecno Press Srl. 1

Sommario. Modellazione di Kerberos mediante DASM. Kerberos (1) Descrizione Kerberos. Descrizione Kerberos Modellazione Analisi di Correttezza

ARCHIVIA PLUS VERSIONE SQL SERVER

Identity Access Management: la soluzione loginfvg

InitZero s.r.l. Via P. Calamandrei, Arezzo

Single Sign On sul web

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

CONFIGURAZIONE DELLA CONNESSIONE DI RETE WIRELESS IULM_WEB (XP)

Specifiche Tecnico-Funzionali

Software Servizi Web UOGA

Console di Amministrazione Centralizzata Guida Rapida

FTP. Appunti a cura del prof. ing. Mario Catalano

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Bibliografia: Utenti e sessioni

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

TeamPortal. Servizi integrati con ambienti Gestionali

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP.

Tipi di utente Pagina di Accesso WebUtilities prevede due tipi di utente

Documentazione API web v 1.0

1 WIZARD DI AUTOCONFIGURAZIONE MAPI 1.1 INTERNET EXPLORER 8

Istruzioni e regole del servizio 3D Secure. Allegato tecnico e-commerce

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

Manuale gestione Porta di Dominio OpenSPCoop 1.1

Cosa è Tower. Sistema di autenticazione per il controllo degli accessi a reti wireless. struttura scalabile. permette la nomadicità degli utenti

Integrazione InfiniteCRM - MailUp

Domande frequenti su Phoenix FailSafe

Applicazioni per l autenticazione Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

RADIUS - ACCESSO DA TELNET E DA CONSOLE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

MANUALE INSTALLAZIONE E CONFIGURAZIONE

Inizializzazione degli Host. BOOTP e DHCP

REGISTRI ELETTRONICI SPAGGIARI

19. LA PROGRAMMAZIONE LATO SERVER

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Tracciabilità degli utenti in applicazioni multipiattaforma

SMS API. Documentazione Tecnica YouSMS HTTP API. YouSMS Evet Limited

SERVICE BROWSER. Versione 1.0

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

2009. STR S.p.A. u.s. Tutti i diritti riservati

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

COME CONFIGURARE UN CLIENT DI POSTA

Allegato A: Regole tecniche per la gestione dell identità.

Manuale operatore per l utilizzo dell utente di dominio

Guida alla Prima Configurazione dei Servizi

ZEROTRUTH & ASTERISK. ZEROTRUTH AUTOREGISTRAZIONE CON ASTERISK

HOWTO. SER_Gestione_Credenziali.doc

CONFIGURAZIONE SERVER APACHE (XAMPP): ACCESSO SICURO A DIRECTORY DEL FILE SYSTEM.

Indice generale. Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5

Configurazione client in ambiente Windows XP

Il Wi-Fi per la pubblica amministrazione Location FUN Guglielmo

Cup HiWeb. Integrazione dei servizi del CUP Marche in applicativi di terze parti

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

Framework di sicurezza della piattaforma OCP (Identity & Access Management)

I file di dati. Unità didattica D1 1

POLICY DI ACCESSO INTERNET E CONTENT FILTER BASATE SU GRUPPI ACTIVE DIRECTORY (Firmware 2.20)

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

COOKIES COSA SONO I COOKIES? COME UTILIZZIAMO I COOKIES?

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Agent, porte, connettività e reti L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?...

Guida all Installazione del ProxyFatturaPA

Presidenza del Consiglio dei Ministri

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Sistema Informativo Gestione Fidelizzazione Clienti MANUALE D USO

PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152)

DURC Client 4 - Guida configurazione Firma Digitale. DURC Client 4.1.7

1. La rete wireless per noi.

Reti di Telecomunicazione Lezione 7

MANUALE PARCELLA FACILE PLUS INDICE

Setefi MonetaWeb v Installazione ed Utilizzo

1.1 Installare un nuovo Client di Concept ed eseguire il primo avvio

SIEMENS GIGASET C450 IP GUIDA ALLA CONFIGURAZIONE EUTELIAVOIP


Avremo quindi 3 utenti di dominio ai quali dovremo assegnare policy di navigazione differenti:

Dicembre 2005 v

Modulo Antivirus per Petra 3.3. Guida Utente

Manuale d uso Software di parcellazione per commercialisti Ver [05/01/2015]

Manuale LiveBox APPLICAZIONE ANDROID.

Sistema di accesso ad internet tramite la rete Wireless dell Università di Bologna

Wireless Network Esercitazioni. Alessandro Villani

GateManager. 1 Indice. tecnico@gate-manager.it

Gestione On Line delle Domande

Guida alla registrazione on-line di un DataLogger

GUIDA ALL UTILIZZO DEL PROGRAMMA TUTTORIFIUTI PER L ACCESSO AUTENTICATO AL PORTALE WEB

Obiettivo dell esercitazione

MANUALE D USO MANUALE D USO

Casalini Crypto. Documento di protocollo tecnico VRS 2.1

Gestione Manutenzioni Immobiliari.

System & Network Integrator. Rap 3 : suite di Identity & Access Management

Utilizzo della APP IrriframeVoice. Versione 1.0 maggio 2015

Indice GAMMA. Guida utente

MANUALE UTENTE Fiscali Free

SSO Specifiche Funzionali

Configurazione di Outlook Express

MyFRITZ!, Dynamic DNS e Accesso Remoto

Eventuali applicazioni future

FAQ per l utilizzo della piattaforma tecnologica KEP (Key Exchanger Platform)

APPENDICE LINEE GUIDA PER SPERIMENTAZIONE WEB

Transcript:

Sistemi informativi e Telemedicina Anno Accademico 2008-2009 Prof. Mauro Giacomini

Concetti di base Tre funzioni fondamentali: Autenticazione: riceve le credenziali, le verifica presso un autorità, se le credenziali sono valide allora all utente è fornita un identità autenticata Autorizzazione: usa l identità trovata per capire se l utente possa o meno accedere a una risorsa Impersonazione: abilita l esecuzione di un applicazione ASP.NET nel contesto dei diritti dell utente autorizzato

Autenticazione Moduli con codice per la verifica delle credenziali: Authentication provider (modalità di autenticazione) Windows authentication: delega a IIS il compito di autenticare l utente in base alle impostazioni dell amministrazione della rete Passport authentication: servizio di autenticazione remota fornito da Microsoft (quello di messenger) Forms authentication: meccanismo integrato in ASP.NET configurabile dal programmatore. Da settare nel file web.config: <authentication mode = Modalità > </authentication> Modalità può essere: Windows, Passport, Forms, None

Windows authentication Basata su IIS Si applica alla risorsa da proteggere Si setta dalla console di IIS Tre metodi: Basic authentication Digest authentication Integrated Windows authentication

Basic authentication Metodo più diffuso in internet Nome e password in chiaro dal browser WEB a IIS Tutte le richeste che il browser farà al server conterranno anche username e password Supportato da qualsiasi browser Nessun problema con firewall e proxy Assenza di crittografia della password, facile all intrusione

NTLM Integrated Windows authentication Non prevede l invio esplicito di username e password Il client dimostra di possedere la password con lo scambio di informazioni crittografate Scambio automatico: alla richiesta di autenticazione del server, il client risponde con le credenziali di accesso fornite da Windows quando ha avuto accesso alla macchina Se queste non bastano allora è chiesto username, password e dominio presso cui autenticare queste informazioni Molto protetto Funziona solo in ambiente Windows e in rete locale

Digest authentication Introdotto con IIS 5.0 Compromesso tra Basic Authentication e Windows Integrated Authentication Scambio di informazioni che provano il possesso delle credenziali senza l invio esplicito di username e password Non interferisce con firewall e proxy server Non tutti i browser lo supportano La scelta del metodo di autenticazione (va fatta nella console di IIS)

Passport authentication (1) Servizio di autenticazione degli utenti a pagamento in esecuzione su un server dedicato gestito da Microsoft (www.passport.com) Passport login server, con profili unici ed indipendenti dall applicazione che li usa Kit specifico Passport SDK Analogo a un dominio Windows server: DB centralizzato di profili utente a cui fanno riferimento tutti i client del dominio Il server produce un elemento di riconoscimento (Passport ticket un cookie) che attesta l avvenuta autenticazione Garantisce che l applicazione non venga in contatto con la password

Passport authentication (2) 1. Il browser richiede a un server web Passport-enabled una risorsa protetta 2. La richiesta non contiene un Passport ticket valido, il browser viene reindirizzato dal Passport Manager al Passport login server (PLS) (con parametri codificati sulla richiesta originaria) 3. Il browser contatta il PLS con i parametri codificati al passo precedente 4. Il PLS richiede username e password, autentica l utente e redirige il browser alla risorsa originaria fornendogli il Passport ticket 5. Tutte le richieste successive avranno il Passport ticket

Forms authentication Gestione di autenticazione da ASP.NET, meccanismo analogo a quello della Passport 1. Il browser richiede una risorsa protetta da Forms authentication 2. Se nella richiesta non è presente un ticket di autenticazione il server redirige il browser alla pagina di login 3. L utente immette il proprio nome e password ed iniva i dati al server 4. Valutazione dei dati di convalida e se positiva è automaticamente rediretto alla richiesta originaria al browser è inviato un cookie (ticket di autenticazione) che sarà il lasciapassare per le successive richieste.

<authentication mode = Forms > <forms loginurl = login.aspx /> </authentication>

Esempio di pagina di login <form runat="server > Nome Utente: <input type= text id="nomeutente runat="server > <br> Password: <input type="password" id="password runat="server > <br> <input type="submit" value= Invia onserverclick="convalida runat="server > <p> <span id="messaggio runat="server ></span> </form> Il programmatore deve scrivere la funzione di convalida per valutare le credenziali presentate dall utente. La classe FormsAuthentication aiuta in questo compito

Metodi della classe FormsAuthentication Metodo Autenticate GetAuthCookie GetRedirectUrl RedirectFromLoginPage Descrizione date le credenziali fornite dall'utente le verifica con quelle memorizzate nel database degli utenti genera un cookie di autenticazione per un dato nome utente senza però inviarlo al browser restituisce l'url della risorsa che ha generato la richiesta di verifica delle autorizzazioni e quindi la redirezione alla pagina di logon rimanda un utente autenticato alla risorsa originariamente richiesta SetAuthCookie SignOut genera un cookie di autenticazione per un dato nome utente inserendolo nella risposta da inviare al browser elimina il cookie di autenticazione di un utente autenticato

Esempio di procedura di convalida <script runat="server"> Sub Convalida(src As Object, e As EventArgs) If Validazione(NomeUtente.Value, Password.Value) Then FormsAuthentication.RedirectFromLoginPage (NomeUtente.Value, False) Else Messaggio.InnerText = "Utente non autorizzato!" End If End Sub </script> La funzione booleana validazione è specifica del programma ed eventualmente accede a un DB per controllare le credenziali. Il metodo RedirectFromLoginPage vuole due parametri: il nome utente per i successivi accessi e un valore booleano sulla persistenza o meno del cookie generato

Convalida da web.config Un metodo di convalida poco flessibile, ma molto efficiente è quello basato su una direttiva nel file web.config <authentication mode=" Forms" > <forms loginurl="login.aspx" > <credentials passwordformat = "Clear"> <user name="rossi" password="pswrd" /> <user name="bianchi" password= "drwsp" /> </credentials> </forms> </authentication>

Funzione di convalida (2) Con questo testo nel web.config la funzione di convalida usa il metodo Autenticate e diventa: Sub Convalida(src As Object, e As EventArgs) If FormsAuthentication.Authenticate(NomeUtente.Value, Password.Value) Then FormsAuthentication.RedirectFromLoginPage (NomeUtente.Value, False) Else Messaggio.InnerText = "Utente non autorizzato!" End If End Sub </script>

Tag credentials Il tag <credentials> ha un attributo passwordformat che determina l algoritmo di passaggio della password, esso può assumere i valori: Clear: nessuna codifica MD5: algoritmo Message Digest 5, livello di sicurezza discreto e buone prestazioni di velocità SHAI: algoritmo omonimo con maggiore sicurezza e prestazioni inferiori in termini di velocità

Gestione delle autorizzazioni Verifica se una specifica identità ha diritto di accesso a una risorsa. Due tipi di autorizzazioni: File authorization: attiva se si usa la modalità Windows authentication e si basa sull uso di ACL (Access Control List) associate alle risorse (tutta a carico del sistema operativo) URL authorization: gestisce l autorizzazione all accesso delleurl che puntano alle varie sezioni dell applicazione web.

Esempio dei due metodi Caso 1: browser trasmette richiesta di accesso a una pagina ASP.NET, il server web controlla sull ACL di quel file per verificare se l utente che ha effettuato la richiesta ha diritto di lettura di quel file Caso 2: il controllo si basa sulle configurazioni dell applicazione web, file web.config. In questo modo si possono verificare i controlli di autenticazione e autorizzazione anche se gli utenti non hanno un account sul server

Uso di URL authorization Nel web.config: <authorization> <allow users ="Bianchi"> <deny users = "Rossi"> </authorization> Parametri di allow e deny user: identificativo degli utenti roles: ruolo o gruppo per cui si dà o nega l autorizzazione verbs: azioni specifiche di cui si concede o nega il diritto, possono essere: GET, HEAD, POST, DEBUG almeno uno fra user e role è obbligatorio

Uso di URL authorization (2) Caratteri speciali: *: tutti gli utenti?: utente anonimo la specificazione del singolo utente sovrascrive quella degli utenti generici Con il tag location possiamo controllare l autorizzazione per la singola pagina ASP.NET

Impersonazione Con l impersonazione l applicazione ASP.NET viene eseguita con l identità dell utente impersonato L impersonazione è disabilitata per default, abilitabile nella sezione <identity> del file web.config <identity impersonate= true /> <identity impersonate= true username= Rossi password= abcd /> Con la seconda l applicazione sarà eseguita per tutti gli utenti come se fossero Rossi.