Weird IIS com problema de autenticação do Windows + IE

3

Eu tenho um site em execução no IIS e usando a autenticação do Windows. Todos os usuários configurados para acessar o site são de um domínio do AD (não de usuários locais). Nas propriedades de um site, configurei para usar o domínio do AD como o domínio.

Agora, ao usar o Firefox, Safari ou Chrome - está tudo bem. Quando o usuário tenta abrir o site, ele obtém a caixa de login. ele digita simplesmente "nome de usuário" e "senha" (vamos fingir que é um login e uma senha reais: P) e ele entra no site.

Ao usar o IE, no entanto, as coisas ficam desagradáveis. Quando o usuário tenta abrir o site - ele recebe a caixa de login. O usuário insere o "nome de usuário" e a "senha" novamente, mas esses são rejeitados! E quando a segunda vez aparece a caixa de login - ele tem o nome de usuário preenchido como "web-server-domain-name \ nome_do_usuário" que está errado, porque web-server-domain-name não é o domínio onde todos os usuários residem "domínio do anúncio"). Eu passei dias tentando descobrir o que está acontecendo ... Observe que, se eu inserir manualmente "ad-domain \ username", serei aceito no site sem problemas. Então, meu palpite é que o IE envia um nome de usuário incorreto se o domínio não for especificado.

De qualquer forma, o IE é o único navegador que aciona esse comportamento!

É possível fazer uma correção no lado do servidor? Talvez seja possível, de alguma forma, mapear automaticamente os usuários para usuários do AD?

Se não for solucionável no lado do servidor - existe uma correção no lado do cliente para isso?

Obrigado.

PS: Eu sou mais um programador do que um administrador de sistemas, então configurar servidores não é o meu lado strong ...: P

UPDATE :

@Evan: Sim, a "Autenticação Digest para servidores de domínio do Windows" também está ativada.

@Eric: a versão do IIS é 6.0. Os métodos de autenticação habilitados são: Integrado e Digest - todos os outros métodos estão desabilitados. Quanto ao log de segurança. Eu olhei para ele, ao fazer "username" e "password" login no Chrome / Firefox e ao fazer "ad-domain \ username" e "senha" de login do IE - as mensagens de log geradas são as mesmas (não vejo diferença, de qualquer forma). Ao digitar "username" e "password", não vejo nenhum erro no log de segurança (ou qualquer outro), por isso não posso dizer qual método ele está tentando usar.

UPDATE 2 :

Como sugerido por Eric nos comentários - eu brinquei com o Fiddler ... Enquanto brinquei com ele, notei que quando "username" e "password" são inseridos no FF e IE - o valor do cabeçalho "Authorization" ( criptografado) enviado pelo IE é mais longo (quase duas vezes) do que um enviado pelo FF.

Eu tentei desativar a autenticação integrada do Windows e só deixar o Digest ativado - que corrigiu o problema (ou seja, o IE usou o reino certo como outros navegadores), mas isso causou muitos outros problemas no meu site, porque com o Digest representação no servidor não funciona (que causa problemas, ao se conectar ao banco de dados, etc).

Alguma idéia?

    
por Paulius Maruška 26.10.2009 / 17:01

2 respostas

1

Isso pode acontecer se o servidor Windows (que executa o IIS 6.0) e os clientes Windows (usando o IE para acessar o site) fizerem parte de uma rede local (LAN).

Também é relevante que você tenha a "Autenticação integrada do Windows" ativada, já que precisa usar e validar os usuários de um domínio do AD.

Vamos chamar o nome deste domínio do AD ad_domain_name .

Nesse cenário (autenticação integrada de LAN +), o processo de autenticação entre clientes Windows e servidor usa a segurança de domínio do AD por design.

Você pode verificar se este é o caso tentando isso (no cliente Windows):

  1. Fechar todas as janelas do IE
  2. Abra o IE
  3. Acesse seu site e obtenha a caixa de login
  4. No campo "username", escreva: ad_domain_name\username
  5. No arquivo "senha", escreva a senha deste usuário

Este procedimento deve permitir o login na primeira tentativa.

Eu observei isso várias vezes e geralmente tudo isso é considerado pelo pessoal da Microsoft como 'recurso de segurança desejado' em caso de rede local. E geralmente foi tratado como um não-problema, pois o procedimento de login pode ser feito de qualquer maneira.

Não sei se existe uma configuração do IIS (e / ou do Windows) que possa evitar toda essa bagunça, mas estou curioso para saber.

    
por 10.05.2013 / 16:29
0

Eu costumo resolver isso certificando-me de que o site esteja na zona da Intranet no IE, o que fará autenticação sem aviso.

    
por 26.10.2009 / 17:13