Università Cattolica del Sacro Cuore - Sede di Brescia Facoltà di Scienze Matematiche Fisiche e Naturali
Corso di laurea in Informatica
Architettura dei Servizi di Directory
Relatore: Dott. Daniele Tessera
Correlatore: Dott. Andrea Pollini
Laureando: Uberti Federico
matricola n. 3105415
Indice
• Definizione di directory e del servizio di directory.
• Servizio di directory X.500.
• L’avvento di LDAP.
• Implementazioni del protocollo LDAP.
• Java Naming Directory Interface.
• Sistema per l’autenticazione e l’autorizzazione degli utenti.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
Definizione di directory e del servizio di directory
Una directory è un contenitore di dati.
Ne esistono due tipologie:
- Le directory non in linea.
- Le directory in linea.
Il servizio di directory consente l'archiviazione ed il recupero di
informazioni di directory per utenti ed applicazioni.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
X.500
X.500 è uno standard ITU, nato verso la fine degli anni ottanta ed
affiancato dal protocollo DAP.
X.500 è descritto da tre modelli standard:
1. Modello informativo, descrive la struttura ed il tipo
dell’informazione memorizzata.
2. Modello del directory, descrive la distribuzione delle
informazioni ed i metodi d’accesso al directory.
3. Modello di sicurezza, descrive i meccanismi d’autenticazione,
d’autorizzazione e verifica l’integrità dei dati.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
X.500
Entry base del DIT
RDN
DN
RDN
Entry intermedia
16/12/2005
Entry foglia
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
LDAP (Lightweight Directory Access Protocol)
Protocollo per l’accesso a directory X.500, utilizza TCP/IP e
rappresenta un’alternativa leggera al DAP.
• Protocol model.
• Data model.
• Security model.
È un protocollo “stateless”.
Le operazioni eseguibili in LDAP sono:
Query, Update, Authentication.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
LDAP (Lightweight Directory Access Protocol)
Una query d’esempio, una ricerca LDAP:
$/> search -server = “my_server”
-username = “cn = Uberti Federico”
-password = “xxxx”
-action = “query”
-start = “o = Unicatt , ou = DMF”
-scope = “subtree”
-filter = “& (position = students) (take_a_degree = 16/12/2005)”
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
LDAP (Lightweight Directory Access Protocol)
Le più conosciute implementazioni di LDAP:
•
OpenLDAP
il protocollo è rilasciato come open source.
•
ActiveDirectory
prodotto dalla Microsoft, sviluppato in un contesto di
supporto di rete per sistemi operativi.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
JNDI (Java Naming Directory Interface)
Il package JNDI comprende il service provider per gestire il
principale sistema di directory attualmente disponibile, LDAP.
Le operazioni previste dallo standard JNDI:
• Connessione.
• Autenticazione.
• Operazioni sui dati.
• Disconnessione.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
JNDI (Java Naming Directory Interface)
Connessione ed autenticazione:
Un esempio di stringa di connessione per il prodotto IBM WebSphere:
INITIAL_CONTEXT_FACTORY = com.ibm.websphere.naming.WsnInitialContextFactory
PROVIDER_URL = iiop://localhost:900
Operazioni sui dati:
Le ricerche (le operazioni più frequenti) si effettuano utilizzando:
• La connessione.
• Un punto base da cui iniziare la ricerca.
• Uno “scope” di ricerca ed i filtri.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
Sistema per l’autenticazione e l’autorizzazione degli utenti
L'autenticazione è
centralizzata.
Contenuto di un nodo
del DIT: le credenziali
ed i diritti d’accesso di
un utente.
Sono tre i metodi per la
rappresentazione degli
utenti nel DIT.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005
Conclusioni
• L’architettura originale dei servizi di directory, l’X.500.
• Il protocollo LDAP, l’evoluzione di X.500.
• Il package JNDI.
• Analisi di un sistema, basato su un server LDAP, per
l’autenticazione e la gestione dei diritti d’accesso degli
utenti a vari tipi di servizio.
16/12/2005
Università Cattolica del Sacro Cuore – Sede di Brescia – A.A. 2004/2005