190 likes | 356 Vues
Corso Drupal advanced. LDAP – Mario Baioli http://www.corsodrupal.uniroma1.it GLAD (gruppo di lavoro drupal Sapienza). Centralizzazione delle utenze. Avere a che fare con una utenza numerosa e con servizi informatici eterogenei e distribuiti spesso
E N D
Corso Drupal advanced LDAP – MarioBaiolihttp://www.corsodrupal.uniroma1.itGLAD (gruppo di lavoro drupal Sapienza)
Centralizzazione delle utenze Avere a che fare con una utenza numerosa e con servizi informatici eterogenei e distribuiti spesso si risolve nella creazione di innumerevoli account per scopi diversi. • Al crescere delle attività e dei servizi del sito si rende necessaria la manutenzione degli account, che potrebbe diventare un problema per la sicurezza generale del sistema informatico per la presenza di account validi non usati, account dimenticati…, password da cambiare ecc. oltre che un onere da parte di chi gestisce i contatti. • Il nostro Drupal ha una ottima gestione degli account ed il nostro obbiettivo è di sfruttare i ruoli, ognuno dei quali può aver associati dei permessi specifici, in modo che l’amministratore del sito possa decidere in modo preciso quali sono le operazioni consentite per ciascun utente. • Centralizzare la gestione delle utenze é un modo per risolvere il problema perché da un lato ci esonera dalla raccolta e manutenzione dei dati identificativi dell’utente e dall’altra ci offre la sicurezza che gli utenti che si stanno autenticando fanno di sicuro parte dell’Ateneo. • Ci farebbe molto comodo se l’utente avesse già un ruolo assegnato dall’Ateneo. LDAP Sapienza - Mario Baioli
Gestione centralizzata delle utenze con LDAP • In questo contesto ci si propone di dare una descrizione di come implementare un sistema per la gestione centralizzata delle utenze facendo uso di LDAP. LDAP Sapienza - Mario Baioli
LDAP un po’ di date … • Negli anni 90 era X.500/DAP (ISO/OSI) • 1991: definizione di LDAP (TCP/IP) • Da gateway verso X.500 a server LDAP standalone. • Nel 1993 università del Michigan, LDAP soppianta il protocollo DAP. • 1996: LDAPv3 è una versione alleggerita del protocollo DAP, da cui deriva il suo nome di Lightweight Directory Access Protocol LDAP Sapienza - Mario Baioli
ancora storia • Prima di LDAP, per accedere a dati memorizzati in una directory X.500 un client doveva supportare il DAP (DIRECTORY ACCESS PROTOCOL), il quale imponeva una notevole penalizzazione delle risorse in gioco in quanto richiedeva l'utilizzo della specifica OSI (Open System Interconnection) che oggi é sostituita largamente dalla suite di protocolli TCP/IP ed altri protocolli. • LDAP nasce proprio per sostituire DAP in quanto molto oneroso dal punto di vista dell'impiego delle risorse. Infatti la “L” aggiunta nell’acronimo sta per Lightweight LDAP Sapienza - Mario Baioli
Quindi LDAP cos’è? • LDAP è un protocollo di accesso a Directory Servers (RFC 1777) • Usa un modello gerarchico delle informazioni, che sono organizzate in un albero (DIT) • Il modello informativo é basato sulle entry, le quali sono composte da attributi che possono avere uno o più valori • E’ possibile determinare il tipo degli attributi e il loro comportamento. LDAP Sapienza - Mario Baioli
LDAP • LDAP è client-sever: un client LDAP invia una richiesta ad un server LDAP, che processa la richiesta ricevuta, accede eventualmente ad un directory database e ritorna dei risultati al client. LDAP Sapienza - Mario Baioli
Tipo di informazioni che possono essere memorizzate in una directory • Il modello di informazioni di LDAP è basato sulle entry. Una entry è una collezione di attributi aventi un unico nome globale: il Distinguished Name (DN). • Il DN è usato per riferirsi ad una particolare entry, senza avere ambiguità infatti ogni attributo dell’entry ha un tipo ed uno o più valori. • I tipi di solito sono stringhe mnemoniche, come cn per i common name (i nomi comuni), oppure mail per gli indirizzi di posta elettronica. LDAP Sapienza - Mario Baioli
Nel nostro caso Per la sintassi dei valori: • %username and %basedn are valid tokens in the expression. Typically it will be: • cn=%username,%basedn which might evaluate to cn=jdoe,ou=campus accounts, dc=ad, dc=mycampus, dc=edu Base DNs are entered above. • Utilizziamo cn=%username LDAP Sapienza - Mario Baioli
DN identifica in maniera univoca un elemento • uid (userid), si tratta di un identificativo unico obbligatorio • cn (common name), si tratta del cognome della persona • o (organization), si tratta dell'azienda della persona • u (organization unit), si tratta dell’unità organizzativa dell‘Ateneo dove la persona lavora • mail, si tratta dell'indirizzo di posta elettronica LDAP Sapienza - Mario Baioli
Dati LDAP Sapienza LDAP Sapienza - Mario Baioli
LDAP LDAP configurato … ora cosa dobbiamo fare? • Il ruolo è associato all’utente già dall’Ateneo e la nostra gestione profili utenti, ruoli e permessi si popola automaticamente al solo accesso da parte dell’utente. LDAP Sapienza - Mario Baioli
LDAP • Una volta che l’utente si autentica con successo sul nostro sito Drupal con LDAP Sapienza, resterà tra gli utenti del sito portandosi con se il ruolo assegnato da Sapienza. • Quindi noi cosa dobbiamo fare LDAP Sapienza - Mario Baioli
LDAP • Ora conosciamo i ruoli che possono arrivare sul sito da autenticazione LDAP e possiamo progettare l’insieme dei permessi associati a ciascuno di questi ruoli dal pannello Permessi dove verranno mostrati tutti i permessi associati ai ruoli esistenti: in questo modo possiamo prevedere quali permessi avrà un utente registrato. • Il nuovo utente che arriva da LDAP avrà un ruolo già assegnato con i suoi permessi che noi gli abbiamo costruito. LDAP Sapienza - Mario Baioli
LDAP • L’unico sforzo da parte dell’amministratore è la configurazione iniziale ed una buona progettazione sui ruoli e permessi. • Niente altro … ;-) LDAP Sapienza - Mario Baioli
Utenti diversi da LDAP • D. Vogliamo usare anche altri LDAP server per gestire ulteriori gruppi di utenti (es. studenti) o altre modalità di autenticazione come quelle standard di drupal, open id o altro. Drupal come gestisce l’autenticazione? R. Modulo LDAP 7.x -1.0-beta12 Menu: Authentication logon options, Allowable Authentications selezionare Mixed mode. Drupal authentication is tried first. On failure, LDAP authentication is performed. help at http://drupal.org/node/997082 LDAP Sapienza - Mario Baioli
Download modulo LDAP Al momento sul mio sito è up questo modulo: LDAP Sapienza - Mario Baioli
Modulo LDAP 7.x-1.0-beta12 LDAP Sapienza - Mario Baioli
FINE LDAP Sapienza - Mario Baioli