DetailPage-MSS-KB

Base de Dados de Conhecimento

Artigo: 909801 - Última revisão: segunda-feira, 2 de Outubro de 2006 - Revisão: 2.3

 

Nesta página

INTRODUÇÃO

Este artigo descreve como se certificar de que está a utilizar a autenticação Kerberos como método de autenticação do Microsoft Windows quando cria uma ligação remota a uma instância do Microsoft SQL Server 2005.

Mais Informação

SQL Server 2005 suporta a autenticação Kerberos indirectamente através de Windows segurança SSPI Support Provider Interface () quando estiver a utilizar a autenticação integrada do Windows em vez da autenticação SQL. No entanto, SQL Server só utilizará a autenticação Kerberos em determinadas circunstâncias quando do SQL Server podem utilizar SSPI para negociar o protocolo de autenticação a utilizar. Se o SQL Server não puder utilizar Kerberos autenticação, o Windows irá utilizar NTLM autenticação. Por motivos de segurança, recomendamos que utilize a autenticação Kerberos em vez de a autenticação NTLM. Os administradores e utilizadores, devem saber como se certificar de que estão a utilizar a autenticação Kerberos para ligações remotas.

Para utilizar a autenticação Kerberos, tem de efectuar-se de que as seguintes condições são verdadeiras:
  • O servidor e os computadores cliente devem ser membros do mesmo domínio do Windows ou membros de domínios fidedignos.
  • Nome de principal de serviço (SPN) do servidor tem de ser registado no serviço de directório do Active Directory.
  • A instância do SQL Server 2005 tem de activar o TCP/IP protocolo.
  • O cliente tem de ligar à instância do SQL Server 2005 utilizando o protocolo TCP/IP. Por exemplo, pode colocar o protocolo TCP/IP no topo da ordem de protocolo do cliente. Ou pode adicionar o prefixo "tcp:" na cadeia de ligação para especificar que a ligação irá utilizar o protocolo TCP/IP.

Como registar um SPN num domínio

Quando regista um SPN para um serviço SQL Server, criar um mapeamento entre um SPN e o Windows essencialmente conta iniciado o serviço de instância do servidor.

O SPN tem de registar uma vez que o cliente tem utilizam um SPN registado para ligar a instância do servidor. O SPN é composto utilizando nome de computador ’s o servidor e a porta de TCP/IP. Se não registar o SPN, o SSPI não é possível determinar a conta que está associada com o SPN. Por conseguinte, A autenticação Kerberos não será utilizada.

Quando do SQL Server estiver a executar sob a conta sistema local ou uma conta de administrador de domínio, a instância será automaticamente registar o SPN o seguinte formato quando a instância é iniciado:
MSSQLSvc / FQDN: tcpport
Nota FQDN é o nome de domínio totalmente qualificado do servidor. tcpport é o número da porta TCP/IP.

Uma vez que o número da porta TCP é inclui o SPN, SQL Server tem de activar o protocolo TCP/IP para um utilizador ligar utilizando a autenticação Kerberos. As mesmas regras aplicam-se as configurações de cluster. Além disso, se a instância registado automaticamente um SPN quando a instância iniciado, o SPN será registado automaticamente quando pára a instância.

Apenas uma conta de administrador do domínio ou a conta de sistema local tem as permissões necessárias para registar um SPN. Por conseguinte, se o serviço do SQL Server é iniciado com uma conta que não seja administrador, SQL Server não consegue registar o SPN para a instância. Este comportamento não irá impedir que a instância seja iniciado. No entanto, a seguinte mensagem será registada no registo de aplicações do registo de eventos do Windows:

Tipo de evento: Information
Origem do evento: MSSQL $ InstanceName
Categoria do evento: (2)
ID do evento: 26037
Data: Date
Tempo: Time
Utilizador: N/d
Computador: ComputerName
Descrição:
A biblioteca da interface de rede de SQL não foi possível registar a Service Principal Name (SPN) para o serviço SQL Server. Erro: 0x54b. Falha ao registar um SPN pode causar a autenticação integrada reverter para NTLM em vez de Kerberos. Esta é uma mensagem informativa. Acção só é necessário se autenticação for exigida pelo políticas de autenticação Kerberos.
Para mais informações, consulte o Centro de ajuda e suporte em http://support.microsoft.com.

Se esta mensagem é iniciada, terá de registar manualmente o SPN para a instância numa conta de administrador de domínio para utilizar a autenticação Kerberos. Para registar o SPN, pode utilizar a ferramenta SetSPN.exe incluído no Microsoft Windows 2000 Server Resource Kit. Esta ferramenta também está incluída nas ferramentas de suporte do Microsoft Windows Server 2003. São incluídas as ferramentas de suporte do Windows Server 2003 no Microsoft Windows Server 2003 Service Pack 1 (SP1).

Para obter mais informações sobre como obter as ferramentas de suporte do Windows Server 2003 Service Pack 1, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
892777  (http://support.microsoft.com/kb/892777/ ) Ferramentas de suporte do Windows Server 2003 Service Pack 1
Pode utilizar um comando semelhante à seguinte para registar um SPN para uma instância:
SetSPN –A MSSQLSvc/<computername><domainname>. <nome_de_domínio>: 1433 <accountname>
Nota Se já existir um SPN, tem de eliminar o SPN antes que possa registar. Poderá ser necessário efectuar este procedimento se tiver alterado o mapeamento de conta. Para eliminar um SPN existente, pode utilizar a ferramenta SetSPN.exe juntamente com o parâmetro - D .

Como se certificar de que está a utilizar a autenticação Kerberos

Depois de ligado a uma instância do SQL Server 2005, execute a seguinte instrução Transact-SQL no SQL Server Management Studio:
select auth_scheme from sys.dm_exec_connections where session_id=@@spid
se o SQL Server está a utilizar a autenticação Kerberos, uma cadeia de caracteres que é apresentada como "KERBEROS" aparece na coluna auth_scheme na janela de resultados.

Referências

Para mais informações, consulte os seguintes tópicos no Microsoft SQL Server 2005 Books Online :
  • Registo de nome principal de serviço
  • Como activar a autenticação Kerberos incluindo do SQL Server clusters de servidores virtuais no servidor

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL Server 2005 Express Edition
Palavras-chave: 
kbmt kbsql2005connect kbinfo KB909801 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 909801  (http://support.microsoft.com/kb/909801/en-us/ )
Partilhar
Opções de suporte adicionais
Fóruns de Suporte da Comunidade Microsoft
Contacte-nos directamente
Encontre um parceiro certificado Microsoft
Loja Microsoft