IE HTTP Kerberos emite a autenticação no site no FQDN que não corresponde ao Domínio do AD

1

Eu tenho um site em um domínio corporativo que autentica usando o login automático do Kerberos do IE e do Chrome, desde que o DNS usado para acessá-lo esteja no FQDN do AD

O domínio do AD não é um domínio público. Para este exemplo, vamos chamá-lo company.internal.corp.net . O SPN padrão é configurado com a conta de usuário do domínio IIS, como HTTP / somesite.company.internal.corp.net mycompany \ svc_iis , e o IE está configurado para ver este site como um site de intranet (permitindo login)

FQ AD Domain: company.internal.corp.net
NETBIOS domain name: MYCOMPANY
DNS for my website: somesite.company.internal.corp.net
IIS App Pool account: MYCOMPANY\svc_iis
SPN: HTTP/somesite.company.internal.corp.net MYCOMPANY\svc_iis

Decidi alterar o DNS deste site para outro nome somesite.mycompanypublic.com para aproveitar a cadeia de certificação SSL no meu certificado público. Eu não pretendo tornar o site acessível externamente. O registro DNS apontará para o mesmo servidor somente para resolução interna e acesso, e o IE está configurado para ver este site como um site de intranet (permitindo entrar). Então agora eu tenho essa configuração:

FQ AD Domain: company.internal.corp.net
NETBIOS domain name: MYCOMPANY
DNS for my website: somesite.mycompanypublic.com  <-- new DNS name, not same as AD domain
IIS App Pool account: MYCOMPANY\svc_iis
SPN: HTTP/somesite.mycompanypublic.com MYCOMPANY\svc_iis  <-- new DNS name, not same as AD domain

Com essa nova configuração, o nome do serviço DNS não corresponde mais ao nome de domínio do AD, mas não estou certo se isso deve ser importante

Depois de configurar como acima, o Kerberos não funciona mais. O IE solicita um nome de usuário / senha para o NTLM, o chrome às vezes avisa e muitas vezes recebe apenas uma página de falha. Os rastros do Fiddler mostram passagens Kerberos passando, mas o servidor rejeitando toda vez com outras 401 todas as vezes. O IE está configurado para ver este site como um site de intranet (permitindo o login automático), então esse não é o problema - eu vejo os tickets passando.

Esta configuração é suportada? Como solucionar problemas de ideias?

Ele se comporta como se o SPN não estivesse configurado corretamente. Eu posso fornecer vestígios de violinista ou tampas wireshark, se desejar.

    
por TheSoftwareJedi 18.07.2014 / 17:50

2 respostas

1

O SPN não precisa corresponder ao domínio do AD. Você precisa ter um SPN que corresponda ao nome usado para se conectar. Não tenho certeza do que você quer dizer com "tickets Kerberos passando". O cabeçalho de autorização HTTP deve começar com "Negociar Y" se as credenciais do Kerberos forem passadas para o servidor.

Provavelmente, o mais rápido é configurar a ferramenta DelegConfig e usar o relatório / assistente para testar sua configuração.

link

link

Solução de problemas do ASP.NET
link

    
por 18.07.2014 / 20:16
0

O problema não teve nada a ver com o domínio ser diferente . Você pode usar qualquer domínio e enquanto o IE estiver configurado corretamente para passar o ticket e o SPN estiver configurado corretamente no AD. A resposta de Greg me forneceu vários links que eu recomendo que você explore se estiver vindo para cá para solucionar um problema do SPN.

Descobri que precisava desativar a autenticação do modo Kernel, que também exigia que eu desbloqueie essa seção de configuração. Também achei que, se a entrada de DNS do site for um CNAME, o Internet Explorer (mas não o Chrome) usará o nome do host para o qual o CNAME está apontando ao criar o ticket SPN.

Eu tive que configurar o servidor para usar as credenciais do pool de aplicativos, como tal

<system.webServer>
   <security>
      <authentication>
         <windowsAuthentication enabled="true" useAppPoolCredentials="true" />
      </authentication>
   </security>
</system.webServer>

Compreensão e configuração do modo kernel

Mas, para alterar esse bloco de configuração, foi necessário o seguinte:

A colleague pointed me to the “Feature Delegation” icon at the root (computer) level of IIS Manager (Thanks, Ryan). Clicking into the Feature Delegation page shows a listing of features and their current override setting. With few exceptions each of the features can be changed to Read/Write, Read Only, or Not Delegated

Desbloqueio das seções de configuração

    
por 19.07.2014 / 15:34