Attributi collegati (AD DS)
Gli attributi collegati sono coppie di attributi in cui il sistema calcola i valori di un attributo (collegamento indietro) in base ai valori impostati sull'altro attributo (collegamento in avanti) in tutta la foresta. Un valore di back-link in qualsiasi istanza dell'oggetto è costituito dai DN di tutti gli oggetti con il DN dell'oggetto impostato nel collegamento di inoltro corrispondente. Ad esempio, "Manager" e "Reports" sono una coppia di attributi collegati, dove Manager è il collegamento in avanti e Report è il collegamento indietro. Si supponga che Bill sia il manager di Joe. Se si archivia il DN dell'oggetto utente di Bill nell'attributo "Manager" dell'oggetto utente di Joe, il DN dell'oggetto utente di Joe verrà visualizzato nell'attributo "Reports" dell'oggetto utente di Bill.
Una coppia di collegamenti in avanti/indietro viene identificata dai valori linkID di due definizioni attributeSchema. Il linkID del collegamento in avanti è un valore pari, positivo, diverso da zero e il linkID del collegamento indietro associato è il linkID in avanti più uno. Ad esempio, il linkID per "Manager" è 42 e il linkID per "Reports" è 43.
Di seguito è riportato un elenco di linee guida per la definizione di una nuova coppia di attributi collegati:
- I valori linkID devono essere univoci tra tutti gli oggetti attributeSchema. Per evitare conflitti, è consigliabile generare automaticamente il linkID seguendo le istruzioni riportate nell'argomento Recupero di un ID collegamento.
- Un collegamento indietro deve avere un collegamento in avanti corrispondente, ovvero il collegamento in avanti deve esistere prima di poter creare un attributo di collegamento indietro corrispondente.
- Un collegamento indietro è sempre un attributo multivalore. Un collegamento in avanti può essere a valore singolo o multivalore. Usare un collegamento forward multivalore quando è presente una relazione molti-a-molti.
- Il valore attributeSchema di un collegamento in avanti deve essere 2.5.5.1, 2.5.5.7 o 2.5.5.14. Questi valori corrispondono alle sintassi che contengono un nome distinto, ad esempio la sintassi Object(DS-DN).
- Il valore attributeSchema di un collegamento indietro deve essere 2.5.5.1, ovvero la sintassi Object(DS-DN).
- Per convenzione, gli attributi di collegamento indietro vengono aggiunti al valore mayContain della classe astratta principale. Ciò consente di leggere l'attributo back link da oggetti di qualsiasi classe perché non vengono effettivamente archiviati con l'oggetto , ma vengono calcolati in base ai valori di collegamento in avanti.