CORRECÇÃO: Poderá detectar um desempenho lento quando utiliza a autenticação integrada do Windows com o protocolo de autenticação Kerberos no IIS 6.0


Sintomas


Poderá detectar um desempenho lento num computador que esteja a executar o Microsoft Internet Information Services (IIS) 6.0. Este problema ocorre quando se verificam as seguintes condições:
  • Utilizar a autenticação integrada do Windows em conjunto com o IIS 6.0.
  • Utilizar o protocolo de autenticação Kerberos para autenticar o utilizador no Web site.
Nota Os visitantes do Web site hospedado no computador poderão também detectar um desempenho lento. Este problema é mais provável se os visitantes têm a largura de banda limitada.

Causa


Quando utiliza o protocolo de autenticação Kerberos, o IIS 6.0 requer o cliente ser novamente autenticado para cada pedido HTTP. Este comportamento provoca um aumento no tráfego de rede.



Este comportamento é diferente do Microsoft Internet Information Services (IIS) 5.0. No IIS 5.0, um cliente é autenticado por Kerberos após um pedido HTTP inicial permanece autenticado para a duração da sessão HTTP Keep-Alive.

Resolução


Informações sobre Service Packs

Para resolver este problema, obtenha o service pack mais recente do Windows Server 2003. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft
889100 como obter o service pack mais recente do Windows Server 2003

Informações sobre correção

Existe uma correção suportada pela Microsoft. No entanto, esta correção destina-se apenas a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico. Esta correcção poderá ser submetida a testes adicionais. Por conseguinte, se não estiver a ser gravemente afetado por este problema, recomendamos que aguarde pela próxima atualização de software que contenha esta correção.

Se a correcção estiver disponível para transferência, existirá uma secção de "Transferência de correcção disponível" na parte superior deste artigo da Base de dados de conhecimento. Se esta secção não for apresentada, contacte o Suporte ao Cliente da Microsoft para obter a correção.

Nota Caso ocorram problemas adicionais ou se for necessária a resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos de normais do suporte serão aplicados a questões de suporte adicional e problemas incluídos nesta correção específica. Para uma lista completa dos números de telefone de suporte e serviço de cliente da Microsoft ou para criar um pedido de assistência separado, visite o seguinte Web site da Microsoft:Nota O formulário "Transferência de correcção disponível" apresenta os idiomas nos quais a correcção está disponível. Se não visualizar o seu idioma, é porque uma correcção não está disponível para esse idioma.

Pré-requisitos

Tem de ter o Windows Server 2003 Service Pack 1 (SP1) instalado para aplicar esta correcção.

Informações de registo

Importante Esta secção, método ou tarefa contém passos que explicam como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo incorrectamente. Por conseguinte, certifique-se de que segue estes passos cuidadosamente. Para uma maior protecção, efectue o backup do Registro antes de o modificar. Em seguida, pode restaurar o registo se ocorrer um problema. Para mais informações sobre como efectuar cópias de segurança e restaurar o registo, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
322756 como efectuar cópias de segurança e restaurar o registo no Windows
Depois de aplicar esta correcção, tem de adicionar e configurar o valor de registo EnableKerbAuthPersist. Para tal, siga estes passos:
  1. Clique em Iniciar, clique em Executar, escreva regedite, em seguida, clique em OK.
  2. Localize e, em seguida, clique na seguinte subchave de registo:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters
  3. No menu Editar , aponte para Novoe, em seguida, clique em Valor DWORD.
  4. Escreva EnableKerbAuthPersist para o nome de entrada e, em seguida, prima ENTER.
  5. EnableKerbAuthPersistcom o botão direito e, em seguida, clique em Modificar.
  6. Na caixa dados do valor , tipo 1 ou qualquer valor diferente de zero para activar a correcção e, em seguida, clique em OK.

    Nota Para repor o serviço IIS o comportamento predefinido, defina o valor para 0.
  7. Sair do Editor de Registo.
  8. Reinicie o serviço IIS. Para tal, siga estes passos:
    1. Clique em Iniciar, clique em Executar, escreva cmde, em seguida, clique em OK.
    2. Escreva os seguintes comandos. Prima ENTER após cada comando:
      net stop iisadmin
      net start iisadmin

Requisito de reinício

Se o serviço IIS estiver em execução quando aplicar esta correcção, tem de reiniciar o serviço IIS.

Informações sobre substituição da correção

Esta correcção não substitui quaisquer outras correcções.

Informações de ficheiro

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são listadas na hora Universal Coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador Fuso horário no item data e hora no painel de controlo.
Windows Server 2003, arquitectura Itanium
Nome do ficheiroVersão do ficheiroTamanho do ficheiroDataHora
W3core.dll6.0.3790.26831,059,32815-Apr-200618:19
Windows Server 2003, x64
Nome do ficheiroVersão do ficheiroTamanho do ficheiroDataHora
W3core.dll6.0.3790.2683569,34415-Apr-200606:04
Windows Server 2003, x86
Nome do ficheiroVersão do ficheiroTamanho do ficheiroDataHora
W3core.dll6.0.3790.2683348,67215-Apr-200605:29

Estado


A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a". Este problema foi corrigido pela primeira vez no Microsoft Windows Server 2003 Service Pack 2.

Mais informações
















Depois de activar o valor de registo EnableKerbAuthPersist e reinicie o serviço IIS, o IIS 6.0 já não necessita do cliente a reautenticação para cada pedido HTTP. Os clientes só têm de se tornarem outro pedido HTTP utilizando uma porta TCP de cliente diferente de autenticar novamente. Este cenário ocorre quando tem de ser estabelecida uma nova sessão de Keep-Alive de HTTP. Para mais informações sobre sessões HTTP Keep-Alive, visite o seguinte Web site da Internet Engineering Task Force (IETF):Para mais informações sobre a terminologia de atualização de software, clique no seguinte número de artigo para visualizar o artigo na Base de Dados de Conhecimento Microsoft:

824684 descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft