INFN-AAI Autenticazione e Autorizzazione Dael Maselli Tutorial INFN-AAI Plus Marzo 2012
Autenticazione & Autorizzazione Sono due processi distinti Spesso vengono confusi per l’abitudine (ormai desueta) di non gestirli separatamente Abbreviazioni: AuthN (Authentication) AuthZ (Authorization) 2INFN-AAI - Dael Maselli
Autenticazione il processo tramite il quale un computer, un software o un utente, verifica l’identità di un altro computer, software o utente I metodi tramite i quali un essere umano può autenticarsi sono divisi in tre classi, in base a: qualcosa che è (sistemi biometrici) qualcosa che ha (smart card, token, badge) qualcosa che conosce (password) 3INFN-AAI - Dael Maselli
STRONG: Kerberos5 Native L’utente che ha a disposizione un principal Kerberos su un realm X.INFN.IT può autenticarsi presso le applicazioni che lo supportino Le richieste di accesso ai servizi avvengono tramite TGS e le credenziali dell’utente non vengono mai esposte al di fuori del proprio client Il mapping tra principal Kerberos e identità è garantito dall’attributo infnKerberosPrincipal nel DS Ogni sede INFN avrà il proprio Kerberos KDC associato al proprio realm SEDE.INFN.IT 4INFN-AAI - Dael Maselli
STRONG: Public Key (x509) Un utente che abbia un certificato x509 personale rilasciato da una CA riconosciuta può autenticarsi su un servizio che implementi tale protocollo L’autenticazione PKI non espone mai le credenziali al di fuori del client Il mapping del certificato con l’identità può essere effettuato sulla base dell’attributo mail presente nel Directory Server LDAP 5INFN-AAI - Dael Maselli
PLAIN: Username/Password Nelle situazioni in cui il servizio o il client non supportino nessuno dei metodi descritti è prevista la semplice autenticazione tramite username e password Assolutamente attraverso canale cifrato SSL/TLS L’autenticazione deve essere richiesta direttamente al server LDAP indicando come username il DN della entry relativa all’utente Il DS, attraverso uno specifico plug-in custom, verificherà la password tramite Kerberos 6INFN-AAI - Dael Maselli
PLAIN: One-Time Password È in beta test un meccanismo di autenticazione che permette di inserire una password temporanea al posto di quella Kerberos Utilizza il protocollo MOTP, il cui client è disponibile per quasi tutte le piattaforme mobile iPhone, Android, PalmOS, Nokia, Java, Windows Mobile 7INFN-AAI - Dael Maselli
Autorizzazione È il processo con il quale un sistema decide quali permessi un soggetto ha nei confronti di una risorsa Soggetto: utente, host o servizio L’autorizzazione avviene sulla base di determinate informazioni che il sistema conosce a proposito del soggetto In AAI le informazioni per l’autorizzazione risiedono nelle entry dei soggetti nel Directory Service LDAP 8INFN-AAI - Dael Maselli
Role-Based Access Control (RBAC) Il ruolo è una proprietà di un soggetto che ne rappresenta la funzione, l’ufficio o incarico i ruoli vengono assegnati in modo gerarchico Nel modello RBAC un soggetto può accedere a una risorsa solo se: il soggetto ha un determinato ruolo attivo tale ruolo è autorizzato ad accedere alla risorsa Nella nostra implementazione i ruoli sono presenti nel DS LDAP sotto forma di gruppi 9INFN-AAI - Dael Maselli
Entitlements Management I Un ulteriore modello di autorizzazione prevede che esista, tra le proprietà dell’utente, una specifica autorizzazione ad un processo di un servizio Tali informazioni sono chiamate Entitlements Specificano esattamente quali operazioni sono autorizzate e per quali servizi Nel DS sono presenti come stringhe nei valori dell’attributo eduPersonEntitlement nelle entry dei soggetti infn.it:IAM:gestioneAnagrafica:modifica:numeroTelefono 10INFN-AAI - Dael Maselli
Entitlements Management II Per gestire l’assegnazione degli entitlement INFN- AAI si serve del software IAM GODiVA GODiVA assegna automaticamente gli entitlement ai soggetti nel DS sulla base di Ruolo Dominio Identità (in deroga al modello RBAC!) 11INFN-AAI - Dael Maselli
F I N E INFN-AAI Autenticazione e Autorizzazione Dael Maselli Tutorial INFN-AAI Plus