Habilitar a Delegação do Kerberos

A delegação do Kerberos permite que o Tableau Server use as credenciais do Kerberos do visualizador de uma pasta de trabalho ou exibição para executar uma consulta a pedido do visualizador. Essa opção é útil nas seguintes situações:

  • É preciso saber quem está acessando os dados (o nome do visualizador será exibido nos logs de acesso da fonte de dados).

  • Sua fonte de dados apresenta segurança em nível de linha, na qual usuários diferentes têm acesso a linhas diferentes.

Fontes de dados compatíveis

O Tableau é compatível com a delegação Kerberos com as estas fontes de dados:

  • Cloudera: Hive/Impala
  • Denodo
  • Hortonworks
  • Oracle
  • PostgreSQL
  • Spark
  • SQL Server
  • Teradata
  • Vertica

O MSAS não é compatível em plataformas Linux.

Requisitos

A delegação do Kerberos exige o Active Directory.

  • O armazenamento de identidade do Tableau Server deve ser configurado para usar o Active Directory.
  • O computador onde o Tableau Server está instalado deve ser unido ao domínio do Active Directory.
  • O MIT Kerberos KDC não é compatível.

Criação na Web e autenticação Kerberos do usuário

Ao configurar o Conectar a dados para um determinado destino, você pode selecionar autenticação integrada ou Windows como método de autenticação preferencial. No entanto, para cenários de criação na Web, o comportamento padrão será usar a conta de serviço Kerberos (conta “Executar como”).

Para ativar credenciais de usuário em cenários de criação na Web com delegação Kerberos, você deve fazer uma configuração adicional usando o TSM. Execute os seguintes comandos:

tsm configuration set -k native_api.WebAuthoringAuthModeKerberosDelegation -v true
tsm pending-changes apply

Após fazer esta configuração, a Delegação Kerberos se torna a operação padrão ao selecionar a autenticação integrada com criação na Web. No entanto, esta configuração não impedirá que os criadores de conteúdo acessem a conta do serviço. Os criadores ainda podem publicar conteúdo conectado à conta de serviço Run As usando o Tableau Desktop ou outros métodos.

Para obter mais informações sobre a conta de serviço Run As, consulte Habilitar o acesso à conta de serviço do Kerberos.

Processo de configuração

Esta seção fornece um exemplo do processo para habilitar a delegação do Kerberos. O cenário também inclui nomes de exemplo para ajudar a descrever as relações entre os elementos de configuração.

  1. O Tableau Server precisará de um ticket de serviço do Kerberos para delegar em nome do usuário que está iniciando a chamada para o banco de dados. Crie uma conta de domínio que será usada para delegar ao banco de dados fornecido. Essa conta é chamada de conta de serviço Run As. Neste exemplo, o usuário de exemplo configurado como a conta de delegação/Run As é tabsrv@example.com.

    A conta deve ser configurada com um usuário e computadores do Active Directory em um servidor do Windows conectado ao domínio do usuário:

    • Abra a página Propriedades da conta de serviço Run As, clique na guia Delegação e selecione Confiar neste usuário para a delegação apenas em serviços específicos e Usar qualquer protocolo de autenticação.
  2. Crie um arquivo keytab para a conta de serviço Run As.

    Por exemplo, os seguintes comandos criam um keytab (tabsrv-runas.keytab) usando a ferramenta ktutil:

    sudo ktutil
    ktutil:  addent -password -p tabsrv@EXAMPLE.COM -k 2 -e <encryption scheme>

    Os esquemas de criptografia para este comando incluem RC4-HMAC, aes128-cts-hmac-sha1-96 e aes256-cts-hmac-sha1-96. Consulte sua equipe de TI para obter o esquema de criptografia correto para o ambiente e a fonte de dados.

    ktutil:  wkt tabsrv-runas.keytab

    O Tableau Server usará a conta de serviço Run As e o keytab associado para autenticar e fazer uma conexão direta com o banco de dados.

  3. Copie o keytab no diretório de dados do Tableau Server e defina a propriedade e as permissões adequadas. Se você estiver executando uma implantação de múltiplos nós, execute os seguintes comandos em cada nó no cluster.

    mkdir /var/opt/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/keytab                 
    sudo chown $USER /var/opt/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/keytab/tabsrv-runas.keytab 
    					
  4. Execute os seguintes comandos do TSM para habilitar a delegação do Kerberos, defina a conta de serviço da delegação e associe o arquivo keytab à conta de serviço:

    					
    tsm configuration set -k wgserver.delegation.enabled -v true
    tsm configuration set -k native_api.datasource_impersonation_runas_principal -v tabsrv@EXAMPLE.COM
    tsm configuration set -k native_api.datasource_impersonation_runas_keytab_path -v /var/opt/keytab/tabsrv-runas.keytab
    tsm configuration set -k native_api.protocol_transition_a_d_short_domain -v false
    tsm configuration set -k native_api.protocol_transition_uppercase_realm -v true

    Em alguns casos, o TSM pode retornar um erro mencionando o --force-keys. Caso tenha recebido esse erro, execute o comando novamente com o parâmetro --force-keys anexado ao argumento.

  5. Execute o seguinte comando do TSM para aplicar as alterações ao Tableau Server:

    tsm pending-changes apply

    Se as alterações pendentes exigirem uma reinicialização do servidor, o comando pending-changes apply exibirá um prompt para que você saiba que ocorrerá uma reinicialização. Esse prompt será exibido mesmo que o servidor esteja parado, porém, nesse caso, não há reinicialização. Cancele o prompt com a opção --ignore-prompt, mas isso não altera o comportamento de reinicialização. Se as alterações não exigirem uma reinicialização, elas serão aplicadas sem um prompt. Para obter mais informações, consulte tsm pending-changes apply.

  6. Habilite a delegação para as conexões de dados:

    Consulte também

    Solucionar problemas do Kerberos

Agradecemos seu feedback!Seu feedback foi enviado. Obrigado!