5. Modello informativo del DSA (server)
LDAP presume che uno o più server forniscano congiuntamente accesso a un DIT. Il server che conserva l’informazione originale è detto «master» per tale informazione; quelli che ne conservano copie sono server «shadowing» o «caching».
Secondo [X.501]:
prefisso di contesto (context prefix): sequenza di RDN dalla radice del DIT al vertice iniziale di un contesto di denominazione; corrisponde al nome distinto di quel vertice.
contesto di denominazione (naming context): sottoalbero di voci conservato in un singolo DSA master.
Un contesto di denominazione è quindi la più ampia raccolta di voci che inizia da una voce gestita come master da un dato server e comprende tutte le subordinate fino alle voci gestite da server diversi. Il prefisso di contesto è il nome della voce iniziale.
La radice del DIT è una voce specifica del DSA (DSA-specific Entry, DSE) e non appartiene ad alcun contesto di denominazione o sottoalbero; ogni server ha valori di attributo diversi nella DSE radice.
5.1. Requisiti dei dati specifici del server
Un server LDAP DEVE (SHALL) fornire informazioni su se stesso e altre informazioni specifiche di ciascun server. Sono rappresentate da un gruppo di attributi nella DSE radice, denominata con il DN avente zero RDN (rappresentato in [RFC4514] dalla stringa di lunghezza zero).
Nel rispetto del controllo degli accessi e di altre limitazioni, gli attributi sono recuperabili con Search [RFC4511] usando baseObject vuoto, scope baseObject, filter "(objectClass=*)" [RFC4515] e attributes con i nomi desiderati. Gli attributi della DSE radice sono operativi e non vengono restituiti se non richiesti per nome.
La DSE radice NON DEVE (SHALL NOT) essere inclusa in una ricerca di sottoalbero avviata dalla radice.
I server possono consentire ai client di modificarne gli attributi, ove opportuno.
Seguono gli attributi definiti per la DSE radice; altri documenti possono definirne altri.
- altServer: server alternativi;
- namingContexts: contesti di denominazione;
- supportedControl: controlli LDAP riconosciuti;
- supportedExtension: operazioni estese LDAP riconosciute;
- supportedFeatures: funzionalità LDAP riconosciute;
- supportedLDAPVersion: versioni LDAP supportate;
- supportedSASLMechanisms: meccanismi Simple Authentication and Security Layers (SASL) [RFC4422] riconosciuti.
I valori possono dipendere da fattori specifici della sessione e da altri fattori. Per esempio, un server che supporta SASL EXTERNAL potrebbe elencare "EXTERNAL" solo quando l’identità del client è stata stabilita da un livello inferiore. Vedere [RFC4513].
La DSE radice può anche includere 'subschemaSubentry'. In tal caso rimanda alla (sotto)voce di sottoschema contenente lo schema che controlla la DSE radice. I client NON DOVREBBERO (SHOULD NOT) presumere che controlli altre voci del server. La Sezione 4.4 fornisce la procedura generale di individuazione.
5.1.1. 'altServer'
L'attributo 'altServer' elenca gli URI che fanno riferimento a server alternativi da contattare quando questo server non è disponibile. Gli URI dei server che implementano LDAP sono scritti secondo [RFC4516]. Possono essere forniti altri tipi di URI. Se il server non conosce altri server utilizzabili, questo attributo è assente. I client possono memorizzare queste informazioni nella cache, nel caso in cui il server preferito non sia più disponibile in seguito.
( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
USAGE dSAOperation )
La sintassi IA5String (1.3.6.1.4.1.1466.115.121.1.26) è definita in [RFC4517].
5.1.2. 'namingContexts'
L'attributo 'namingContexts' elenca i prefissi dei contesti di denominazione che il server gestisce come master o come replica shadow (in parte o per intero). Se il server è un DSA di primo livello [X.501], dovrebbe elencare anche una stringa vuota (che indica la radice della DIT). Se il server non gestisce alcuna informazione come master o replica shadow (ad esempio, se è un gateway LDAP verso una directory X.500 pubblica), questo attributo è assente. Se il server ritiene di gestire come master o replica shadow l'intera directory, l'attributo ha un solo valore, ossia la stringa vuota (che indica la radice della DIT).
Questo attributo può essere utilizzato, ad esempio, per selezionare un nome di voce adatto alle operazioni successive con il server.
( 1.3.6.1.4.1.1466.101.120.5 NAME 'namingContexts'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
USAGE dSAOperation )
La sintassi DistinguishedName (1.3.6.1.4.1.1466.115.121.1.12) è definita in [RFC4517].
5.1.3. 'supportedControl'
L'attributo 'supportedControl' elenca gli identificatori di oggetto che identificano i controlli di richiesta [RFC4511] supportati dal server. Se il server non supporta alcun controllo di richiesta, questo attributo è assente. Non è necessario elencare gli identificatori di oggetto che identificano i controlli di risposta.
Le procedure per la registrazione degli identificatori di oggetto utilizzati per individuare i meccanismi di protocollo sono descritte in dettaglio in BCP 64, RFC 4520 [RFC4520].
( 1.3.6.1.4.1.1466.101.120.13 NAME 'supportedControl'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38
USAGE dSAOperation )
La sintassi OBJECT IDENTIFIER (1.3.6.1.4.1.1466.115.121.1.38) è definita in [RFC4517].
5.1.4. 'supportedExtension'
L'attributo 'supportedExtension' elenca gli identificatori di oggetto che identificano le operazioni estese [RFC4511] supportate dal server. Se il server non supporta alcuna operazione estesa, questo attributo è assente.
Un'operazione estesa è generalmente composta da una richiesta estesa e da una risposta estesa, ma può includere anche altre unità di dati di protocollo (come le risposte intermedie). L'identificatore di oggetto assegnato alla richiesta estesa viene utilizzato per identificare l'operazione estesa. Non è necessario elencare come valori di questo attributo gli altri identificatori di oggetto utilizzati nell'operazione estesa.
Le procedure per la registrazione degli identificatori di oggetto utilizzati per individuare i meccanismi di protocollo sono descritte in dettaglio in BCP 64, RFC 4520 [RFC4520].
( 1.3.6.1.4.1.1466.101.120.7 NAME 'supportedExtension'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38
USAGE dSAOperation )
La sintassi OBJECT IDENTIFIER (1.3.6.1.4.1.1466.115.121.1.38) è definita in [RFC4517].
5.1.5. 'supportedFeatures'
L'attributo 'supportedFeatures' elenca gli identificatori di oggetto che identificano le funzionalità facoltative supportate dal server. Se il server non supporta alcuna funzionalità facoltativa rilevabile, questo attributo è assente.
( 1.3.6.1.4.1.4203.1.3.5 NAME 'supportedFeatures'
EQUALITY objectIdentifierMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.38
USAGE dSAOperation )
Le procedure per la registrazione degli identificatori di oggetto utilizzati per individuare i meccanismi di protocollo sono descritte in dettaglio in BCP 64, RFC 4520 [RFC4520].
La sintassi OBJECT IDENTIFIER (1.3.6.1.4.1.1466.115.121.1.38) e la regola di corrispondenza objectIdentifierMatch sono definite in [RFC4517].
5.1.6. 'supportedLDAPVersion'
L'attributo 'supportedLDAPVersion' elenca le versioni di LDAP supportate dal server.
( 1.3.6.1.4.1.1466.101.120.15 NAME 'supportedLDAPVersion'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
USAGE dSAOperation )
La sintassi INTEGER (1.3.6.1.4.1.1466.115.121.1.27) è definita in [RFC4517].
5.1.7. 'supportedSASLMechanisms'
L'attributo 'supportedSASLMechanisms' elenca i meccanismi SASL [RFC4422] riconosciuti e/o supportati dal server [RFC4513]. Il contenuto di questo attributo può dipendere dallo stato corrente della sessione. Se il server non supporta alcun meccanismo SASL, questo attributo non è presente.
( 1.3.6.1.4.1.1466.101.120.14 NAME 'supportedSASLMechanisms'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
USAGE dSAOperation )
La sintassi Directory String (1.3.6.1.4.1.1466.115.121.1.15) è definita in [RFC4517].