può un utente far parte della sottostruttura multipla in un (a base Ldap) istanza del servizio directory?

StackOverflow https://stackoverflow.com/questions/1270571

Domanda

Sono abbastanza nuovo per il LDAP basato programmazione del servizio di directory utilizzando il framework .NET; quindi hanno una domanda stupida di base.

Mi piacerebbe scoprire i tutti gli alberi sotto un particolare utente appartiene utilizzando System.DirectoryServices.Protocol.

Prima di tutto, può un utente far parte dei molteplici alberi Sub in “una” istanza servizio di directory? Se sì, allora come posso trovare tutti gli alberi secondari che un particolare utente appartiene utilizzando namespace “System.DirectoryServices.Protocol”?

Se un utente appartiene a “solo” un particolare sub albero, quindi credo di poter trovare tutte le DN dell'albero sub dal DN dell'utente. Per favore fatemi sapere se c'è qualche altro modo efficace?

Aggiornamento:

Per essere precisi circa la mia domanda, dato questo è DN del mio oggetto utente - “uid = Daffyd, OU = Ducks, ou = people, o = A“, se può esistere in altre UO direttamente o indirettamente? Per esempio. possono “UO = Anatre” essere parte di qualsiasi altra UO di “Persone”?

Allora la mia domanda successiva, senza fare un qualche tipo di manipolazione delle stringhe di DN dell'utente, posso in qualche modo trovare i nomi dei DN nodi padre che questo utente che utilizzano System.DirectoryService.Protocol efficiente?

È stato utile?

Soluzione

Non sono sicuro di cosa si intende per un utente "appartenenza" ad una sottostruttura. Un oggetto utente esisterà in un unico percorso nella directory, e la sua DN vi dirà che cosa quel percorso è (in pratica, è viceversa: si conosce il DN e poi trovare l'oggetto). Questo è il punto di tutta la DN == nome distinto:. Per citarne modo univoco gli oggetti

Naturalmente, un utente può appartenere a più gruppi (come una caratteristica di Active Directory); questi gruppi sono distribuite su directory. Non è sicuro se lei ha fatto riferimento anche ai gruppi quando si usa la parola "appartengono".

Edit: come qualsiasi tipo di oggetto di utente può avere un solo genitore OU, analogamente, ciascuna OU può avere solo un singolo contenitore principale (tipicamente O o OU). L'intera directory forma un albero, nessun nodo può avere due genitori.

Il quadro elabora solo DNS come stringhe. Tuttavia, ci sono terze parti DN librerie parser disponibili.

Altri suggerimenti

Questo è basato esclusivamente sulla mia esperienza con Active Directory - ma mi avrebbe assunto altre directory LDAP saranno gestirlo simile:

n, un utente esiste solo una volta e quindi può essere situato in un solo singolo contenitore (tipicamente un OrganizationalUnit). Non c'è alcun concetto di "link simbolici" agli utenti, per quanto ne so.

E perché si vuole davvero un utente di esistere in più posti comunque ??

Se si desidera che l'utente di far parte di diverse sottostrutture al fine di gestire i permessi, si sta facendo tutto sbagliato - non si dovrebbe basare le vostre decisioni o meno di permettere qualche utente una data operazione sulla sua "location" nella gerarchia LDAP, ma piuttosto sulla appartenenza al gruppo.

gruppi LDAP sono ciò che sono destinato a gestire i permessi, e un utente può essere membro di un certo numero di gruppi - non avete il vostro 1: n relazione - utente può essere membro di gruppi, e questi gruppi sono responsabili per le autorizzazioni di gestione.

Marc

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top