Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um SPN (Nome do Princípio de Serviço) identifica exclusivamente uma instância de serviço em um domínio do Active Directory quando Kerberos é usado para autenticar mutuamente identidades de cliente e serviço. Um SPN é associado à conta de logon na qual a instância de serviço é executada.
Para aplicativos cliente que se conectam ao Analysis Services por meio da autenticação Kerberos, as bibliotecas de clientes do Analysis Services constroem um SPN usando o nome do host da string de conexão e outras variáveis conhecidas, como a classe de serviço, que são predefinidas em qualquer versão do Analysis Services.
Para que a autenticação mútua ocorra, os SPNs construídos pelo cliente devem corresponder a um objeto SPN correspondente em um CONTROLADOR de Domínio do Active Directory (DC). Isso significa que talvez seja necessário registrar vários SPNs para uma única instância do Analysis Services para abranger todas as maneiras pelas quais um usuário pode especificar o nome do host em uma cadeia de conexão. Por exemplo, você provavelmente precisa de dois SPNs para lidar com o FQDN (nome de domínio totalmente qualificado) de um servidor, bem como o nome curto do computador. Registrar corretamente o SPN do Analysis Services é essencial para uma conexão bem-sucedida. Se o SPN for inexistente, malformado ou duplicado, a conexão falhará.
O registro de SPN é uma tarefa manual executada pelo administrador do Analysis Services. Ao contrário do mecanismo de banco de dados do SQL Server, o Analysis Services nunca registra automaticamente seu SPN na inicialização do serviço. O registro manual é necessário quando o Analysis Services é executado sob a conta virtual padrão, uma conta de usuário de domínio ou uma conta interna, incluindo um SID por serviço.
O registro de SPN não será necessário se o serviço for executado em uma conta de serviço gerenciada predefinida criada por um administrador de domínio. Observe que, dependendo do nível funcional do seu domínio, o registro de um SPN pode exigir permissões de administrador de domínio.
Dica
Microsoft Kerberos Configuration Manager for SQL Server é uma ferramenta de diagnóstico que ajuda a solucionar problemas de Kerberos relativos à conectividade com SQL Server. Para obter mais informações, consulte Microsoft Kerberos Configuration Manager for SQL Server.
Dica
Microsoft Kerberos Configuration Manager for SQL Server é uma ferramenta de diagnóstico que ajuda a solucionar problemas de Kerberos relativos à conectividade com SQL Server. Para obter mais informações, consulte Microsoft Kerberos Configuration Manager for SQL Server.
Este tópico contém as seguintes seções:
Quando o registro de SPN é necessário
Formato SPN para Serviços de Análise
Registro de SPN para uma conta virtual
Registro de SPN para uma conta de domínio
Registro de SPN para uma conta incorporada
Registro de SPN para uma instância nomeada
Registro de SPN para um cluster SSAS
Registro de SPN para instâncias do SSAS configuradas para acesso HTTP
Registro de SPN para instâncias do SSAS que estão ouvindo em portas fixas
Quando o registro de SPN é necessário
Qualquer conexão de cliente que especifica "SSPI=Kerberos" na cadeia de conexão introduzirá requisitos de registro de SPN para uma instância do Analysis Services.
O registro de SPN é necessário nas circunstâncias a seguir. Para obter informações mais detalhadas, consulte Configurar a delegação restrita do Analysis Services para Kerberos.
A delegação de identidade é necessária para transferir a identidade do usuário do aplicativo cliente ou do serviço de camada intermediária para o Analysis Services. A delegação de identidade normalmente é usada quando permissões ou filtros por usuário são definidos em objetos específicos.
Um cenário comum que envolve a delegação de identidade é configurar serviços de camada intermediária, como Serviços do Excel ou Reporting Services, para delegação restrita com a finalidade de representar uma identidade de usuário ao recuperar dados no Analysis Services. Para dar suporte a esse comportamento, você deve fornecer um SPN do Analysis Services como o serviço de destino ao configurar os Serviços do Excel ou o Reporting Services para delegação restrita.
O Analysis Services delega uma identidade de usuário ao recuperar dados de um banco de dados relacional do SQL Server para bancos de dados tabulares usando o modo DirectQuery. Esse é o único cenário em que o Analysis Services delegará a identidade do usuário a outro serviço.
Formato SPN para Analysis Services
Use setspn para registrar um SPN. Em sistemas operacionais mais recentes, o setspn é instalado como um utilitário do sistema. Para obter mais informações, consulte SetSPN.
A tabela a seguir descreve cada parte de um SPN do Analysis Services.
| Elemento | Descrição |
|---|---|
| Classe Service | MSOLAPSvc.3 identifica o serviço como uma instância do Analysis Services. O .3 é uma referência à versão do protocolo XMLA-over-TCP/IP usado nas transmissões do Analysis Services. Não está relacionado à versão do produto. Assim, MSOLAPSvc.3 é a classe de serviço correta para SQL Server 2005, 2008, 2008 R2, 2012 e qualquer versão futura do Analysis Services até que o protocolo em si seja revisado. |
| Nome do host | Identifica o computador no qual o serviço está em execução. Pode ser um nome de domínio totalmente qualificado ou um nome NetBIOS. Você deve registrar um SPN para ambos. Ao registrar um SPN para o nome NetBIOS de um servidor, certifique-se de usar SetupSPN -S para verificar se há registro duplicado. Não há garantia de que os nomes NetBIOS sejam exclusivos em uma floresta e ter um registro SPN duplicado fará com que a conexão falhe.Para clusters com balanceamento de carga do Analysis Services, o nome do host deve ser o nome virtual atribuído ao cluster. Nunca crie um SPN usando o endereço IP. Kerberos usa os recursos de resolução DNS do domínio. Especificar um endereço IP ignora essa funcionalidade. |
| Número da porta | Embora o número da porta faça parte da sintaxe SPN, você nunca especifica um número de porta ao registrar um SPN do Analysis Services. O caractere colon ( : ) , normalmente usado para fornecer um número de porta na sintaxe SPN padrão, é usado pelo Analysis Services para especificar o nome da instância. Para uma instância do Analysis Services, supõe-se que a porta seja a porta padrão (TCP 2383) ou uma porta atribuída pelo serviço SQL Server Browser (TCP 2382). |
| Nome da instância | O Analysis Services é um serviço replicável que pode ser instalado várias vezes no mesmo computador. Cada instância é identificada por meio do nome da instância. O nome da instância é prefixado com um caractere de dois-pontos ( : ) . Por exemplo, dado um computador host chamado SRV01 e uma instância nomeada do SSAS-Tabular, o SPN deve ser SRV01:SSAS-Tabular. Observe que a sintaxe para especificar uma instância nomeada do Analysis Services difere da usada por outras instâncias do SQL Server. Outros serviços usam uma barra inversa ( \ ) para acrescentar o nome da instância em um SPN. |
| Conta de serviço | Esta é a conta de início do serviço Windows MSSQLServerOLAPService. Pode ser uma conta de usuário de domínio do Windows, uma conta virtual, uma MSA (conta de serviço gerenciada) ou uma conta interna, como um SID por serviço, NetworkService ou LocalSystem. Uma conta de usuário de domínio do Windows pode ser formatada como domínio\usuário ou user@domain. |
Registro de SPN para uma conta virtual
Contas virtuais são o tipo de conta padrão para serviços do SQL Server. A conta virtual é NT Service\MSOLAPService para uma instância padrão e NT Service\MSOLAP$<instance-name> para uma instância nomeada.
Como o nome indica, essas contas não existem no Active Directory. Existe uma conta virtual somente no computador local. Ao se conectar a serviços externos, aplicativos ou dispositivos, a conexão é feita usando a conta do computador local. Por esse motivo, um registro SPN para o Analysis Services em execução em uma conta virtual é, na verdade, um registro SPN para a conta do computador.
Sintaxe de exemplo para uma instância padrão em execução como NT Service\MSOLAPService
Este exemplo mostra a sintaxe setspn para a instância padrão do Analysis Services em execução na conta virtual padrão. Neste exemplo, o nome do host do computador é AW-SRV01. Conforme observado, o registro SPN deve especificar a conta do computador em vez da conta virtual, NT Service\MSOLAPService.
Setspn -s MSOLAPSvc.3/AW-SRV01.AdventureWorks.com AW-SRV01
Observação
Lembre-se de criar dois registros SPN, um para o nome do host NetBIOS e um segundo para um nome de domínio totalmente qualificado do host. Diferentes aplicativos cliente usam convenções de nome de host diferentes ao se conectarem ao Analysis Services. Ter dois registros SPN garante que ambas as versões do nome do host sejam contabilizadas.
Sintaxe de exemplo para uma instância nomeada em execução como NT Service\MSOLAP$<instance-name>
Este exemplo mostra a sintaxe setspn para uma instância nomeada em execução na conta virtual padrão. Neste exemplo, o nome do host do computador é AW-SRV02 e o nome da instância é AW-FINANCE. Novamente, é a conta do computador especificada para o SPN, em vez do NT Service\MSOLAP$<instance-name> da conta virtual.
Setspn -s MSOLAPSvc.3/AW-SRV02.AdventureWorks.com:AW-FINANCE AW-SRV02
Registro de SPN para uma conta de domínio
Usar uma conta de domínio para executar uma instância do Analysis Services é uma prática comum.
Para instâncias do Analysis Services executadas em um cluster com balanceamento de carga de rede ou hardware, uma conta de domínio é necessária, com cada instância no cluster em execução na mesma conta de domínio.
Sintaxe de exemplo para uma instância padrão em execução como um usuário de domínio
Este exemplo mostra a sintaxe setspn para a instância padrão do Analysis Services em execução em uma conta de usuário de domínio, SSAS-Service, no domínio AdventureWorks.
Setspn -s msolapsvc.3\AW-SRV01.Adventureworks.com AdventureWorks\SSAS-Service
Dica
Verifique se o SPN foi criado para o servidor do Analysis Services executando Setspn -L <domain account> ou Setspn -L <machinename>, dependendo de como o SPN foi registrado. Você deve ver MSOLAPSVC.3/<hostname> na lista.
Registro de SPN para uma conta incorporada
Embora essa prática não seja recomendada, as instalações mais antigas do Analysis Services às vezes são configuradas para serem executadas em contas internas, como Serviço de Rede, Serviço Local ou Sistema Local.
Sintaxe de exemplo para uma instância padrão executada em uma conta integrada
O registro SPN para um serviço em execução em uma conta integrada ou SID por serviço é equivalente à sintaxe SPN usada para a conta virtual. Em vez do nome da conta, use a conta do computador:
Setspn -s MSOLAPSvc.3/AW-SRV01.AdventureWorks.com AW-SRV01
Registro de SPN para uma instância nomeada
As instâncias nomeadas do Analysis Services usam atribuições de porta dinâmica detectadas pelo serviço SQL Server Browser. Ao usar uma instância nomeada, registre um SPN para o Serviço de Navegador do SQL Server e a instância nomeada do Analysis Services. Para obter mais informações, consulte um SPN é necessário para o serviço SQL Server Browser quando você estabelece uma conexão com uma instância nomeada do SQL Server Analysis Services ou do SQL Server.
Exemplo de sintaxe SPN para o Serviço SQL Browser em execução como LocalService
A classe de serviço é MSOLAPDisco.3. Por padrão, esse serviço é executado como NT AUTHORITY\LocalService, o que significa que o registro SPN está definido para a conta do computador. Neste exemplo, a conta do computador é AW-SRV01, correspondente ao nome do computador.
Setspn -S MSOLAPDisco.3/AW-SRV01.AdventureWorks.com AW-SRV01
Registro de SPN para um cluster SSAS
Para clusters de failover do Analysis Services, o nome do host deve ser o nome virtual atribuído ao cluster. Esse é o nome de rede do SQL Server, especificado durante a Instalação do SQL Server quando você instalou o Analysis Services em cima de um WSFC existente. Você pode encontrar esse nome no Active Directory. Você também pode encontrá-lo na guia Função | Recursos do Gerenciador de Cluster de Failover | . O nome do servidor na guia Recursos é o que deve ser usado como o "nome virtual" no comando SPN.
Sintaxe SPN para um cluster do Analysis Services
Setspn -s msolapsvc.3/<virtualname.FQDN > <domain user account>
Lembre-se de que os nós em um cluster do Analysis Services devem usar a porta padrão (TCP 2383) e operar sob a mesma conta de usuário de domínio para que cada nó tenha o mesmo SID. Consulte Como agrupar o SQL Server Analysis Services para obter mais informações.
Registro de SPN para instâncias do SSAS configuradas para acesso HTTP
Dependendo dos requisitos da solução, você pode ter configurado o Analysis Services para acesso HTTP. Se sua solução incluir o IIS como um componente de camada intermediária e a autenticação Kerberos for um requisito de solução, talvez seja necessário registrar manualmente um SPN para IIS. Para obter mais informações, consulte "Definir as configurações no computador executando o IIS" em Como configurar o SQL Server 2008 Analysis Services e o SQL Server 2005 Analysis Services para usar a autenticação Kerberos.
Em termos de registro de SPN para a instância do Analysis Services, não há diferença entre uma instância configurada para TCP ou HTTP. A conexão com o Analysis Services do IIS, usando a extensão ISAPI do MSMDPUMP, é sempre TCP.
Isso significa que você pode usar as instruções das seções anteriores para a instância padrão ou nomeada para registrar o SPN. Ao especificar o nome do host, use o nome do host especificado no arquivo msmdpump.ini quando configurou o serviço para acesso HTTP.
Para obter mais informações sobre o acesso HTTP, consulte Configurar o acesso HTTP ao Analysis Services no IIS (Serviços de Informações da Internet) 8.0.
Registro de SPN para instâncias do SSAS escutando em portas fixas
Você não pode especificar um número de porta em um registro SPN do Analysis Services. Se você instalou o Analysis Services como a instância padrão e a configurou para escutar em uma porta fixa, agora você deve configurá-la para escutar na porta padrão (TCP 2383). Para instâncias nomeadas, você precisa usar o serviço SQL Server Browser e atribuições de portas dinâmicas.
Uma instância do Analysis Services só pode escutar em uma única porta. Não há suporte para o uso de várias portas. Para obter mais informações sobre a configuração da porta, consulte Configurar o Firewall do Windows para permitir o acesso ao Analysis Services.
Consulte Também
Autenticação e Delegação de Identidade do Microsoft BI
Autenticação mútua usando Kerberos
Como configurar o SQL Server 2008 Analysis Services e o SQL Server 2005 Analysis Services para usar a autenticação Kerberos
Sintaxe SetSPN (Nomes da Entidade de Serviço) (Setspn.exe)
Que SPN eu uso e como ele chega lá?
SetSPN
Guia Passo a Passo das Contas de Serviço
Configurar contas de serviço e permissões do Windows
Como usar SPNs ao configurar aplicativos Web hospedados nos Serviços de Informações da Internet
novidades nas contas de serviço
Configurar a autenticação Kerberos para produtos do SharePoint 2010 (white paper)