Servidor IIS não-domínio autentica no domínio?

2

Eu tenho um servidor IIS que é um servidor autônomo que não está no domínio.

Assim, os usuários não precisam fazer login em um banco de dados de usuários local. Posso ter o servidor IIS, autenticar usuários no controlador de domínio ou pelo menos ter o nome de logon do usuário passado para o aplicativo IIS?

Pode-se supor que os usuários confiarão no site.

    
por SpaceManSpiff 31.07.2009 / 15:04

3 respostas

3

Eu encontrei um requisito semelhante ao tentar descobrir como aproveitar o Active Directory para o BlogEngine.NET. Depois de passar algum tempo pesquisando, consegui usar as contas de usuário do Active Directory com a estrutura de Associação .NET de Autenticação Básica.

Isso funcionou no servidor da Web do meu domínio, mas poderia funcionar facilmente para servidores que não são do domínio, desde que você adicione o nome de usuário e a senha à seção de configuração do web.config.

De meu post no blog sobre como configurar:

Adicione uma entrada na seção que aponta para o seu controlador de domínio.

<add name="ADConnectionString" connectionString="LDAP://server.domain.com/DC=domain,DC=com" />

Observe que a primeira parte da sintaxe LDAP: // especifica o nome do controlador de domínio (server.domain.com). Você tem algumas opções aqui. Você pode especificar o nome de domínio totalmente qualificado, como mostrado no exemplo; você pode especificar o relativeDistinguishedNamek (ex. server); você pode especificar o endereço IP do controlador de domínio (ex. 192.168.1.10); ou para mais redundância, você pode especificar apenas o nome do domínio (ex. domain.com).

Faça com que sua seção seja parecida com a seguinte:

<membership defaultProvider="MyADMembershipProvider">
      <providers>
        <add name="MyADMembershipProvider"
                 type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
                 connectionStringName="ADConnectionString"
                 attributeMapUsername="sAMAccountName"
                 enableSearchMethods="true"/>
      </providers>
</membership>

Você notará que eu não configurei um nome de usuário e senha para conectar-me ao Active Directory. Isso porque estou executando o BlogEngine em um servidor membro do domínio e os serviços do IIS estão sendo executados em um pool de aplicativos usando a conta dos Serviços de Rede. Se você precisar usar credenciais explícitas, poderá adicionar connectionUsername e connectionPassword à entrada MyADMembershipProvider com as informações apropriadas.

    
por 31.07.2009 / 17:50
1

Eu recomendaria usar uma chamada LDAPS, se possível, em vez de LDAP. Eu também recomendo o uso de SSL se você começar a passar suas senhas de domínio em texto simples.

    
por 31.07.2009 / 20:23
0

Enquanto eu concordo com o LDAP criptografado, também criptografo a senha do domínio no arquivo de configuração, bem .... (chaves sob o tapete, ou por trás do vaso de plantas?)

    
por 31.07.2009 / 20:35