Solucionar problemas do Kerberos

As sugestões de solução de problemas neste tópico são divididas em questões relacionadas ao SSO (Single sign-on) no servidor e às fontes de dados delegadas.

Logon único no Tableau Server

Em um ambiente do Kerberos SSO, um usuário que faz logon no Tableau Server a partir de um navegador da Web ou do Tableau Desktop poderá ver uma mensagem indicando que o Tableau Server não pode conectá-lo automaticamente (usando o logon único). Em vez disso, ele sugere fornecer um nome e senha de usuário do Tableau Server.

Solução de problemas de logon no computador do cliente

  • Insira o nome de usuário e a senha—para verificar o acesso geral do usuário ao Tableau Server, faça logon ao inserir o nome e senha de usuário.

    Se as credenciais falharem, o usuário pode não ser um usuário no Tableau Server. Para que o Kerberos SSO funcione, o usuário deverá ser capaz de acessar o Tableau Server, além de receber um Ticket Granting Ticket (TGT) do Active Directory (conforme descrito no item TGT nesta lista).

  • Verifique outras credenciais SSO de usuários—Tente conectar ao SSO para Tableau Server usando outras contas de usuário. Se todos os usuários tiverem sido afetados, o problema pode estar na configuração do Kerberos.

  • Use um computador diferente do servidor— o Kerberos SSO não funciona ao fazer logon no Tableau Server do host local. Os clientes devem se conectar de um computador que não seja o computador do Tableau Server.

  • Use um nome do servidor, não o endereço IP—o Kerberos SSO não funciona se você inserir um endereço IP como o nome do Tableau Server. Além disso, o nome do servidor usado para acessar o Tableau Server deve corresponder ao nome usado na configuração do Kerberos (consulte Entrada da tabela principal, abaixo).

  • Confirme que o cliente possui o TGT—o computador do cliente deve ter um TGT (Ticket Granting Ticket) do domínio do Active Directory. A delegação limitada, com um proxy que conceda um tíquete, não é suportada.

    Para confirmar se o computador do cliente é do tipo TGT, faça o seguinte:

    • No Windows, abra um prompt de comando e digite o seguinte: klist tgt

    • No Mac, abra uma janela terminal e digite o seguinte: klist

    O resultado exibirá um TGT para o usuário/domínio que estiver tentando autenticar ao Tableau Server.

    O computador cliente pode não ter um TGT nas seguintes circunstâncias:

    • O computador do cliente está usando uma conexão VPN.

    • O computador do cliente não está unido ao domínio (por exemplo, se for um computador pessoal usado no ambiente de trabalho).

    • O usuário entrou no computador com uma conta local (não-domínio).

    • O computador é um Mac que não está usando o Active Directory como servidor de conta de rede.

  • Confirme a versão e as configurações do navegador—para o logon no navegador da Web, certifique-se de que o navegador é compatível com o Kerberos e, se necessário, se está configurado corretamente.

    • O Internet Explorer (IE) e o Chrome funcionam "sem precisar de uma configuração adicional" no Windows.

    • O Safari funciona "sem precisar de uma configuração adicional" no Mac.

    • É necessária uma configuração adicional para o uso do Firefox.

    Para obter mais informações, consulte Suporte do cliente Tableau para o SSO do Kerberos.

Solução de problemas de erros de logon no servidor

Se você não puder resolver o problema do computador cliente, suas próximas etapas serão solucionar o problema no computador que está executando o Tableau Server. O administrador pode usar a ID de solicitação para localizar a tentativa de logon nos logs do Apache no Tableau Server.

  • Arquivos de log—Verifique se o error.log do Apache apresenta um erro com a data e hora exatos da falha na tentativa de login.

    • Em um arquivo ziplog, estes logs estarão na pasta \httpd.

    • No Tableau Server, esses logs estarão na pasta \data\tabsvc\logs\httpd\.

  • Entrada da tabela principal – Se a entrada error.log exibir a mensagem "Não há entrada de tabela principal correspondente a HTTP/<servername>.<domain>.<org>@”, por exemplo:

    [Fri Oct 24 10:58:46.087683 2014] [:error] [pid 2104:tid 4776] [client 10.10.1.62:56789] gss_acquire_cred() failed: Unspecified GSS failure. Minor code may provide more information (, No key table entry found matching HTTP/servername.domain.com@)

    Esse erro é o resultado de uma incompatibilidade entre quaisquer dos seguintes:

    • URL do Tableau Server - A URL usada pelo computador cliente para acessar o servidor.

      Este é o nome a ser inserido no Tableau Desktop ou na barra de endereço do navegador. Pode ser um shortname (http://servername) ou um nome de domínio totalmente qualificado (http://servername.domain.com)

    • Pesquisa de DNS reverso para o endereço IP servidor.

      Esta função procura por um nome DNS usando um endereço IP.

      No prompt de comando, digite:

      ping servername

      com o endereço IP que foi retornado ao fazer o ping no servidor, faça um tipo de pesquisa de DNS reverso:

      nslookup <ip address>

      O comando nslookup retornará informações de rede do endereço IP. Na porção Resposta não autoritativa da resposta, verifique se o nome de domínio totalmente qualificado (FQDN) corresponde aos valores configurados a seguir: 

      • O arquivo .keytab do Kerberos

      • Service Principal Name (SPN) para o servidor

      Para obter mais informações sobre a configuração desses valores, consulte Saiba mais sobre os requisitos do Keytab..

Verificar script de configuração do Kerberos

Talvez seja necessário modificar o comando ktpass usado para gerar o arquivo keytab para variáveis de ambiente. Revise as etapas de solução de problemas no artigo da Base de dados de conhecimento, Não é possível gerar o script de configuração do Kerberos para o Tableau Server(O link abre em nova janela).

Logon único da fonte de dados:

Falhas de acesso à fonte de dados delegada

Verifique os arquivos de registro vizqlserver para "workgroup-auth-mode":

  • Em um arquivo ziplog, estes logs estarão na pasta \vizqlserver\Logs

  • No Tableau Server, esses logs estarão na pasta \data\tabsvc\vizqlserver\Logs

Procure "workgroup-auth-mode" nos arquivos log. Será exibida a mensagem "o kerberos-impersonate" não está "como tal".

Configuração de vários domínios da delegação do Kerberos

O Tableau Server tem a capacidade de delegar usuários de outros domínios do Active Directory. Se o seu banco de dados usa o MIT Kerberos, é necessário ajustar o seu principal do Kerberos para o mapeamento de usuário de banco de dados. Especificamente, será necessário atualizar krb5.conf com regras para cada escopo do Kerberos dos quais os usuários irão se conectar. Use a marca auth_to_local na seção [realms] para mapear os nomes principais aos nomes de usuário local.

Por exemplo, considere um usuário, EXAMPLE\jsmith, cujo Principal do Kerberos é jsmith@EXAMPLE.LAN. Neste caso, o Tableau Server especificará um usuário delegado, jsmith@EXAMPLE. O Tableau Server usará o alias de domínio herdado do Active Directory como Escopo do Kerberos.

O banco de dados de destino podem já ter uma regra, como a seguinte, para mapear o usuário, jsmith@EXAMPLE.LAN, ao usuário do banco de dados, jsmith.

EXAMPLE.LAN = {
   RULE:[1:$1@$0](.*@EXAMPLE.LAN)s/@.*//
   DEFAULT
}

Para suportar a delegação, é necessário adicionar outra regra para mapear o jsmith@EXAMPLE para uma fonte de dados do usuário:

EXAMPLE.LAN = {
   RULE:[1:$1@$0](.*@EXAMPLE.LAN)s/@.*//
   RULE:[1:$1@$0](.*@EXAMPLE)s/@.*//
   DEFAULT
}

Consulte o tópico de Documentação do MIT Kerberos, krb5.conf(O link abre em nova janela), para obter mais informações.

Delegação restrita em domínios cruzados

Em alguns cenários com domínios cruzados, onde o KDC executa em um servidor Windows anterior ao Windows 2012, a delegação pode falhar. Erros que podem ocorrer:

  • Interfaces de rede do SQL Server: o sistema não consegue entrar em contato com um controlador de domínio para enviar a solicitação de autenticação. Tente novamente mais tarde.
  • Cliente nativo do SQL Server: não foi possível gerar o contexto SSPI.
  • O controlador de domínio retorna: KRB-ERR-POLICY error with a status STATUS_CROSSREALM_DELEGATION_FAILURE (0xc000040b).

Domínios cruzados refere-se a um cenário em que o Tableau Server é executado em um domínio diferente da fonte de dados com contas de serviço diferentes. Por exemplo:

  • O Tableau Server executa no DomínioA na conta de serviço do DomínioA.
  • O SQL Server executa no DomínioB na conta de serviço do DomínioB.

A delegação limitada tradicional só funciona se os dois servidores estão no mesmo domínio. O usuário pode vir de outros domínios.

Se os erros apontados acima ocorrem, então, para habilitar esse cenário, o administrador do Active Directory deve remover qualquer delegação limitada tradicional que esteja configurada na conta de delegação. É possível remover delegações com as ferramentas de gerenciamento do Active Directory ou ao remover os valores associados à propriedade do Active Directory, msDS-AllowedToDelegateTo.

Se desejar preservar uma delegação existente em domínio simples com a delegação em domínios cruzados, configure as duas pelo uso de uma delegação limitada com base em recursos.

Para obter mais informações sobre o Kerberos e a delegação restrita, consulte o tópico da Microsoft Visão geral da delegação restrita do Kerberos(O link abre em nova janela).

Criação na Web

Há dois cenários de criação na Web que não são compatíveis com a delegação do Kerberos: "Conectar a dados na Web" e "Criar fontes de dados na Web". O recurso ainda não é compatível com a delegação. Especificamente, se você criar uma fonte de dados que usa Kerberos na criação na Web, a fonte de dados usará a autenticação da conta de serviço Run As. Se quiser usar a delegação do Kerberos para criar uma fonte de dados, você deve publicar com o Tableau Desktop. Para obter mais informações sobre a conta de serviço Run As, consulte Acesso aos dados com a conta de serviço Run As.

Agradecemos seu feedback!Seu feedback foi enviado. Obrigado!