um usuário pode ser parte de vários sub-árvore em um (baseado em LDAP) instância de serviço de diretório?

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

Pergunta

Eu sou muito novo para o serviço de diretório baseado em LDAP programação utilizando framework .NET; portanto, têm uma pergunta boba básico.

Eu gostaria de descobrir as todas as árvores sub um usuário em particular pertence ao uso de System.DirectoryServices.Protocol.

Em primeiro lugar, um usuário pode fazer parte das várias árvores Sub em “a” instância de serviço de diretório? Se sim, então como posso encontrar todas as sub árvores que um usuário em particular pertence ao uso de namespace “System.DirectoryServices.Protocol”?

Se um usuário pertence a “apenas” uma sub árvore em particular, então eu acho que posso encontrar todas as DN da sub árvore do DN do usuário. Por favor, deixe-me saber se há alguma outra maneira eficiente?

Update:

Para ser mais específico sobre a minha pergunta, dado este é DN do meu objeto de usuário - “uid = Daffyd, OU = Patos, OU = Pessoas, o = A“, se ele pode existir em outro OU direta ou indiretamente? Por exemplo. pode “OU = Patos” ser parte de qualquer outra UO do “povo”?

Então minha próxima pergunta, sem fazer algum tipo de manipulação seqüência de DN do usuário, posso de alguma forma encontrar os nomes de DN nós pai que esse usuário usando System.DirectoryService.Protocol eficiente?

Foi útil?

Solução

Eu não tenho certeza que você entende por um usuário "pertencer" a uma subárvore. A objeto de usuário irá existir em um único caminho no diretório, e seu DN vai dizer o que esse caminho é (na prática, é vice-versa: você sabe o DN e depois encontrar o objeto). Este é o ponto de todo o nome distinto DN ==:. Para citar exclusivamente objetos

É claro que um usuário pode pertencer a vários grupos (como um recurso do Active Directory); esses grupos estão distribuídos por diretório. Não tenho certeza se você também referidos grupos ao usar a palavra "pertencem".

Editar: como qualquer tipo de objecto de utilizador pode ter apenas uma única UO pai, do mesmo modo, cada OU pode ter apenas um único recipiente pai (tipicamente O ou OU). O diretório inteiro forma uma árvore, nenhum nó pode ter dois pais.

O quadro só processa DNS como strings. No entanto, há de terceiros DN analisador bibliotecas disponível.

Outras dicas

Este é baseada unicamente em minha experiência com o Active Directory - mas eu assumiria outros diretórios LDAP vai lidar com isso semelhante:

n, um utilizador existe apenas uma vez e, portanto, só pode ser localizado em um único recipiente (tipicamente um OrganizationalUnit). Não há nenhum conceito de "links simbólicos" para os usuários, tanto quanto eu sei.

E por que você realmente deseja que um usuário existe em vários lugares de qualquer maneira ??

Se você deseja que o usuário seja parte de várias sub-árvores, a fim de permissões do punho, você está fazendo tudo errado - você não deve basear suas decisões se deve ou não permitir que algum usuário de uma determinada operação em sua "localização" na hierarquia LDAP, mas sim nos membros do grupo.

grupos LDAP são o que têm a intenção de permissões do punho, e um usuário pode ser membro de qualquer número de grupos - lá você tem a sua relação 1: n - o usuário pode ser membro de grupos, e esses grupos são responsáveis ??pela manipulação de permissões.

Marc

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top