Estamos em uma rede corporativa que está executando o Active Directory e gostaríamos de testar algumas coisas do LDAP (provedor de associação do Active Directory, na verdade) e até agora, nenhum de nós pode descobrir qual é a nossa string de conexão LDAP. Alguém sabe como podemos encontrar? A única coisa que sabemos é o domínio em que estamos.
O ASP.NET Active Directory Membership Provider faz uma ligação autenticada ao Active Directory usando um nome de usuário, senha e "cadeia de conexão" especificados. A cadeia de conexão é composta pelo nome do servidor LDAP e pelo caminho completo do objeto contêiner no qual o usuário especificado está localizado.
A cadeia de conexão começa com o URI
LDAP://
.Para o nome do servidor, você pode usar o nome de um controlador de domínio nesse domínio-- digamos "dc1.corp.domain.com". Isso nos dá até
LDAP://dc1.corp.domain.com/
agora.O próximo bit é o caminho totalmente qualificado do objeto contêiner onde o usuário de associação está localizado. Digamos que você esteja usando a conta "Administrador" e o nome do seu domínio seja "corp.domain.com". A conta "Administrador" está em um contêiner chamado "Usuários" localizado um nível abaixo da raiz do domínio. Assim, o DN totalmente qualificado do contêiner "Usuários" seria:
CN=Users,DC=corp,DC=domain,DC=com
. Se o usuário com o qual você está vinculando estiver em uma UO, em vez de um contêiner, o caminho incluirá "OU=ou-name".Portanto, usar uma conta em uma OU chamada
Service Accounts
que é uma sub-OU de uma OU chamadaCorp Objects
que é uma sub-OU de um domínio chamadocorp.domain.com
teria um caminho totalmente qualificado deOU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
.Combine o
LDAP://dc1.corp.domain.com/
com o caminho totalmente qualificado para o contêiner onde o usuário de associação está localizado (como, digamos,LDAP://dc1.corp.domain.com/OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
) e você terá sua "string de conexão".(Você pode usar o nome do domínio na string de conexão em vez do nome de um controlador de domínio. A diferença é que o nome do domínio será resolvido para o endereço IP de qualquer controlador de domínio no domínio. Isso pode ser bom ou ruim. Você não depende de nenhum controlador de domínio único para estar funcionando para que o provedor de associação funcione, mas o nome acontece para resolver, digamos, um DC em um local remoto com conectividade de rede irregular, então você pode ter problemas com a associação provedor funcionando.)
Digite
dsquery /?
em um prompt de comando.Ex:
dsquery user -name Ja*
obtém as strings de conexão para todos os usuários com nomes começando em Ja*.Eu apenas uso esta ferramenta da Softerra (eles fazem um excelente navegador LDAP freeware) para obter o DN do usuário do usuário conectado no momento: http://www.ldapbrowser.com/download.htm
Eu sempre tive problemas para encontrar a maneira correta de digitar a OU. O comando
dsquery ou domainroot
fornecerá uma lista dos nomes corretos de todas as UOs em seu domínio. Não tenho certeza se isso ajudará para uma organização maior.Se você abrir o ADSIedit, ele deverá mostrar o caminho quando você escolher Conectar a...
Instale as Ferramentas de Administração de Servidor Remoto: http://www.microsoft.com/en-us/download/details.aspx?id=7887
Abra um prompt de comando e digite >dsquery server
Para obter mais informações, verifique este post (parte inferior do post): http://www.schiffhauer.com/mvc-5-and-active-directory-authentication/
A sintaxe completa está em http://www.faqs.org/rfcs/rfc2255.html
Achei a maneira mais fácil :
Você também pode encontrar de
Eu tenho estes do servidor Microsoft Windows 2012 R2