Estou encontrando vários resultados do google, mas nenhum parece corrigir meu problema.
Estou configurando uma nova caixa do WINDOWS 2008 R2 no trabalho que se comunica com uma caixa existente do SQL 2012 por meio de ferramentas da Web em execução no IIS 7.5 em nossa intranet. Estamos a utilizar a autenticação do Windows através de fora - IE - > Servidor Web - > SQL Estamos usando o Kerberos. Ao visualizar a ferramenta localmente no servidor web, está tudo bem, mas quando tento visualizá-la em um cliente remoto, recebo o erro "Login failed for user 'NT AUTHORITY \ ANONYMOUS LOGON'".
Deixe-me explicar como temos o site -
Pool de aplicativos executando o .NET 2.0 no modo clássico com uma identidade de ApplicationPoolIdentity
A autenticação do Windows é ativada com a Proteção Estendida definida como Desativada, a opção Ativar Autenticação do Modo do Kernel está marcada e os Provedores ativados são (na ordem) Negociar e NTLM. O ASP.NET Impersonation está habilitado para representar o usuário autenticado.
Cadeia de conexão SQL no seguinte formato:
Data Source=THESQLBOXNAME;Initial Catalog=DATABASENAME;Integrated Security=True
Eu tenho uma página de teste que eu coloquei no servidor web (seguindo as configurações acima mencionadas) que exibe os seguintes dados:
HttpContext.Current.User.Identity.IsAuthenticated
é verdadeiro
HttpContext.Current.User.Identity.Name
é o usuário esperado (usuário iniciando o navegador)
System.Security.Principal.WindowsIdentity.GetCurrent.Name
é o usuário esperado
Eu tentei uma consulta SQL básica para a caixa sql e recebi o erro de login mencionado acima.
Eu verifiquei o AD e verifiquei que a caixa da web tem o conjunto de delegações - "Confiar neste computador somente para serviços especificados / Usar somente o Kerberos"
Eu executei esta página de teste em uma caixa existente do WINDOWS 2008 R2 que executa o IIS 7.5 (com as mesmas configurações mencionadas acima) e não recebo qualquer erro.
Eu verifiquei as configurações do SPN para as duas caixas da web e elas são as mesmas (com exceção do nome da máquina):
setspn -L EXISTINGBOX
WSMAN/EXISTINGBOX.domain.com
WSMAN/EXISTINGBOX
TERMSRV/EXISTINGBOX.domain.com
TERMSRV/EXISTINGBOX
HOST/EXISTINGBOX.domain.com
HOST/EXISTINGBOX
RestrictedKrbHost/EXISTINGBOX.domain.com
RestrictedKrbHost/EXISTINGBOX
setspn -L NEWBOX
WSMAN/NEWBOX.domain.com
WSMAN/NEWBOX
TERMSRV/NEWBOX.domain.com
TERMSRV/NEWBOX
HOST/NEWBOX.domain.com
HOST/NEWBOX
RestrictedKrbHost/NEWBOX.domain.com
RestrictedKrbHost/NEWBOX
Eu percebo que ele está agindo como o problema do salto duplo, mas o fato de ele funcionar em outra caixa, me faz pensar que é algo específico com a nova caixa web. O que diabos estou perdendo ?????