Gerenciar extensões de painel e visualização no Tableau Server
As extensões de painel são aplicativos da Web executados em áreas personalizadas do painel e podem interagir com o restante do painel usando a API de extensões do Tableau(O link abre em nova janela). As extensões de painel dão aos usuários a capacidade de interagir com dados de outros aplicativos diretamente do Tableau. Assim como as extensões de painel, as extensões de visualização são aplicativos Web que usam a API de extensões do Tableau e permitem que os desenvolvedores criem novos tipos de visualização. Os usuários do Tableau podem acessar extensões de visualização por meio do cartão Marcas da planilha.
Observação: é necessário ser um administrador de servidor para habilitar as extensões de painel e visualização no servidor ou para bloquear extensões específicas de serem executadas. É necessário ser um administrador de servidor para adicionar extensões à lista segura e controlar o tipo de dados que as extensões podem acessar. Além disso, o administrador de servidor pode configurar se os usuários no site verão prompts ao adicionar ou exibir extensões. Para obter informações sobre a segurança de extensão e as opções de implantação recomendadas, consulte Segurança de extensão - Práticas recomendadas para implantação(O link abre em nova janela).
Para obter informações sobre o uso de extensões de painel no Tableau, consulte Usar extensões de painel.
Para obter informações sobre como usar extensões de visualização, consulte Adicionar extensões de visualização à sua planilha.
Procurando pelo Tableau Cloud? Consulte Gerenciar extensões de painel no Tableau Cloud. (O link abre em nova janela)
Antes de executar as extensões no Tableau Server
O Tableau aceita duas maneiras de hospedar extensões:
- Extensões habilitadas para rede, que são hospedadas em servidores Web localizados dentro ou fora da rede local. As extensões habilitadas para rede têm acesso completo à Web.
- Extensões de área restrita, que são executadas em um ambiente protegido, sem acesso a qualquer outro recurso ou serviço na Web.
Observação: a partir da versão 2021.1.0, o Tableau oferece suporte à integração com o Einstein Discovery por meio da extensão do painel do Einstein Discovery. Essa é uma extensão especial que tem acesso a dados em Salesforce.com e é permitida por padrão. Não é considerada uma extensão habilitada para rede ou uma extensão em área restrita. Para obter mais informações sobre a integração do Einstein Discovery, consulte Notas de versão do Tableau Server(O link abre em nova janela).
As extensões de área restrita são hospedadas pelo Tableau e empregam padrões W3C, como a Política de segurança de conteúdo (CSP), para garantir que a extensão não possa fazer chamadas de rede fora do Tableau Server de hospedagem. Uma extensão de área restrita pode consultar dados no painel, mas não pode enviar esses dados para fora da área restrita. As extensões de área restrita são compatíveis com o Tableau 2019.4 e posteriores. Por padrão, as extensões de área restrita podem ser executadas se as extensões estiverem ativadas para o site.
As extensões habilitadas para rede são aplicativos Web e podem ser executadas em qualquer computador configurado como servidor Web. Isso inclui computadores locais, computadores em seu domínio e sites de terceiros. Como as extensões habilitadas para rede podem ser hospedadas em sites de terceiros e ter acesso aos dados na pasta de trabalho, é necessário permitir as extensões confiáveis. Consulte Testar a segurança das extensões habilitadas para rede.
Por segurança, é possível usar as configurações das extensões no Tableau Server para controlar e limitar aquelas que podem ser executadas.
Por padrão, as extensões de área restrita podem ser executadas se as extensões estiverem ativadas para o site.
Por padrão, as extensões habilitadas para rede não serão permitidas, a menos que tenham sido explicitamente adicionadas à lista de permissões.
Por padrão, apenas as extensões que usam o protocolo HTTPS são permitidas, o que garante um canal codificado para envio e recebimento de dados (a única exceção é para
http://localhost
).Se a extensão habilitada para rede exigir dados completos (acesso aos dados subjacentes), ela não poderá ser executada no Tableau Server, a não ser que você a adicione à lista de permissões e conceda acesso aos dados completos.
Controlar as extensões e o acesso aos dados
Os administradores de servidor podem controlar uma configuração global para permitir extensões em todos os sites do servidor. Os administradores do servidor também podem adicionar extensões, incluindo extensões de área restrita, à lista de bloqueio global para impedir que sejam executadas (consulte Bloquear extensões específicas). Por padrão, todas as extensões de área restrita são ativadas no servidor, mas os administradores de site podem optar por substituir o padrão e proibir extensões de área restrita para o site.
Alterar a configuração global que habilita as extensões no servidor
Para alterar essa configuração do servidor, vá até Gerenciar todos os sites > Configurações > Extensões. Se o servidor tiver apenas um site único, os controles globais aparecerão na página de configurações do site.
Em Extensões de visualização e painel, marque ou desmarque a caixa de seleção Permitir que usuários executem extensões neste servidor. Se essa opção não estiver selecionada, as extensões não terão permissão para serem executadas. Essa configuração global substitui as configurações Permitir que usuários executem extensões neste site para cada site.
Alterar as configurações padrão de um site
Os administradores do servidor podem controlar se as extensões são ativadas para o site e se as extensões de área restrita são permitidas no site. Ou seja, se as extensões forem ativadas no servidor, as configurações padrão do site permitem que extensões de área restrita sejam executadas no site, contanto que a extensão não seja bloqueada especificamente no servidor. As configurações padrão do site permitem que extensões habilitadas para rede sejam executadas se constarem na lista de permissões do site. Extensões individuais de Sandbox também podem ser adicionadas à lista de permissões, se as extensões de Sandbox não forem permitidas por padrão.
Para alterar essas configurações de site, vá até Configurações > Extensões.
Em Extensões de painel e visualização, configure estas opções:
- Permitir que usuários executem extensões neste site
- Permitir que extensões de área restrita sejam executadas, a menos que sejam bloqueadas especificamente por um administrador do servidor
Os administradores de servidor podem adicionar ou remover extensões habilitadas para rede e de Sandbox da lista de permissões de um site. Ao adicionar uma extensão à lista segura, é possível controlar a permissão de acesso os dados completos. Consulte Adicionar extensões à lista segura e configurar prompts de usuário
Identificar a URL de uma extensão
Como um aplicativo da Web, uma extensão está associada a uma URL. Você pode usar essa URL para testar e verificar a extensão. Além disso, use a URL para adicionar a extensão à lista segura e permitir acesso aos dados completos ou à lista de bloqueio para negar acesso.
No arquivo de manifesto
Se você tiver um arquivo de manifesto da extensão (.trex
), um arquivo XML que define as propriedades da extensão, você poderá encontrar a URL do elemento <source-location>
.
<source-location>
<url>https://www.example.com/myExtension.html</url>
</source-location>
No Tableau Exchange
Se você tiver adicionado ou baixado uma extensão do Tableau Exchange, poderá encontrar a URL da extensão no Exchange. Abra o bloco da extensão, em Especificações técnicas, procure a URL sob o título, Hospedado em.
Identificar uma extensão de painel usando a caixa de diálogo Sobre
Se você tiver adicionado a extensão ao painel, você poderá encontrar a URL nas propriedades da extensão. No menu Mais opções, clique em Sobre.
A caixa de diálogo Sobre lista o nome da extensão, o autor, o site do autor e a URL da extensão.
Adicionar extensões à lista segura e configurar prompts de usuário
Para garantir que os usuários possam usar extensões habilitadas para rede confiáveis, você pode adicioná-las à lista de permissões do site. Além disso, você também pode adicionar extensões de sandbox à lista de permissões, se as extensões de sandbox não forem habilitadas por padrão no site.
Na lista segura, você pode conceder ou não acesso da extensão aos dados completos. Por padrão, ao adicionar uma extensão à lista de permissões, a extensão só tem acesso aos dados resumidos (ou agregados). Além disso, é possível controlar se os usuários veem um prompt pedindo que permitam o acesso da extensão aos dados. Você pode querer adicionar uma extensão à lista segura (uma extensão de sandbox, por exemplo) apenas para que possa configurar se os usuários verão o prompts. Ao ocultar o prompt de usuários, a extensão poderá ser executada imediatamente.
Vá até Configurações > Extensões.
Em Habilitar extensões específicas, adicione a URL da extensão. Consulte Identificar a URL de uma extensão.
Dica: você pode usar um ponto final e um asterisco (
.*
) como um curinga na URL para permitir todas as extensões em um determinado domínio ou local. Por exemplo, para permitir todas as extensões no domínio exemplo.com que usam a porta 8080, você adicionaria a URL:https://example.com:8080/.*
. Para mais informações, veja Usar expressões regulares na URL da lista segura.Escolha Permitir ou Negar à extensão Acesso aos dados completos.
O acesso aos dados completos é o acesso aos dados subjacentes na exibição, não apenas aos dados de resumo ou agregados. O acesso aos dados completos também inclui informações sobre as fontes de dados, como os nomes das conexões, campos e tabelas. Normalmente, se você estiver adicionando uma extensão que deseja usar à lista segura, você também deseja permitir que a extensão tenha acesso a todos os dados, se a extensão exigir isso. Antes de adicionar extensões à lista segura, certifique-se de Testar a segurança das extensões habilitadas para rede.
Escolha Mostrar ou Ocultar os Prompts do usuário.
Os usuários veem os prompts por padrão quando estão adicionando uma extensão de painel a um painel, ou uma extensão de visualização a uma planilha, ou quando estão interagindo com uma visualização que tem uma extensão. O prompt apresenta detalhes da extensão aos usuários, além de se ela possui acesso aos dados completos. O prompt dá aos usuários a capacidade de permitir ou negar que a extensão seja executada. Você pode ocultar esse prompt de usuários, permitindo que a extensão seja executada imediatamente.
Bloquear extensões específicas
A política global padrão permite todas as extensões de área restrita e extensões habilitadas para rede que constam na lista de permissões de um site. Os administradores de servidor podem impedir que extensões específicas sejam executadas ao adicioná-las à lista de bloqueio do servidor. Se uma extensão estiver na lista de bloqueio global, ela substituirá qualquer configuração da extensão na lista segura de um site.
Para adicionar uma extensão à lista de bloqueio do servidor, vá até Gerenciar todos os sites > Configurações > Extensões. Em instalações de site único, a lista de bloqueio está na página de configuração Extensões do site.
Em Bloquear extensões específicas, adicione a URL da extensão. Consulte Identificar a URL de uma extensão.
Usar expressões regulares na URL da lista segura
Em geral, ao adicionar uma extensão à lista segura, você deve usar a URL específica da extensão. No entanto, há momentos em que você pode querer permitir várias extensões hospedadas no mesmo domínio e local. Neste caso é conveniente utilizar um curinga na URL. As configurações de extensão suportam o uso de expressões regulares.
Expressão regular | Descrição |
. | Um ponto final (.) é um curinga que você pode usar para corresponder a qualquer caractere. Se precisar especificar um ponto final (.) na URL em vez de um curinga, você pode escapar do caractere com uma barra invertida (\. ). |
* | Um asterisco (*) é um quantificador que especifica uma ou mais instâncias do caractere anterior. |
Tenha cuidado ao usar curingas para não tornar a lista segura muito permissiva e permitir inadvertidamente o acesso a extensões que não deveriam ter acesso.
A tabela a seguir mostra alguns exemplos de uso de expressões regulares na URL. Observe que esses exemplos não mostram o protocolo e a URL completa da extensão. Somente extensões que usam o protocolo HTTPS são permitidas (com exceção de http://localhost).
Para especificar... | Exemplo | Especifica |
Intervalo de domínios | .*\.example.com | Todos os subdomínios em example.com. |
Todas as portas | example.com:.* | As extensões têm acesso permitido de todas as portas em example.com. |
Todas as extensões em domínio, porta e caminho | example.com:8080/xyz/.* | Todas as extensões no domínio example.com que usam a porta 8080 e estão localizadas em zyz têm acesso permitido. |
Todas as portas para vários domínios | .*\.example.com:.* | Permite acesso a extensões em todas as portas em todos os subdomínios em example.com. |
Todas as extensões em um domínio e caminho que correspondam ao padrão | example.com/t.c/.* | Permite acesso a extensões em execução em example.com em pastas que correspondem ao padrão t.c. Por exemplo, tic, tac, toc. |
Testar a segurança das extensões habilitadas para rede
As extensões de painel e de visualização são aplicativos da Web que interagem com dados no Tableau usando a API de extensões. As extensões de habilitadas para rede podem ser hospedadas nos servidores Web dentro ou fora do domínio, fazer chamadas de rede e ter acesso a recursos na Internet. Devido às possíveis vulnerabilidades, como scripts entre sites, você deve testar e examinar as extensões habilitadas para rede antes de serem usadas no Tableau Desktop e antes de permitir as extensões no Tableau Server.
Examinar os arquivos de origem
As extensões de painel e de visualização são aplicativos da Web e incluem vários arquivos HTML, CSS e JavaScript, além de um arquivo de manifesto XML (*.trex) que define as propriedades na extensão. Em muitos casos, o código de uma extensão está disponível publicamente no GitHub e pode ser examinado ou baixado lá. No arquivo de manifesto (*.trex
), você pode encontrar o local de origem ou URL que indica onde a extensão está hospedada, o nome do autor, além do site ou empresa do autor para entrar em contato e obter suporte. O elemento <source-location>
especifica a URL, o elemento <author>
especifica o nome da empresa e o site a ser contatado para suporte (website="SUPPORT_URL"
). O site é o link Obter suporte que o usuário vê na caixa de diálogo Sobre da extensão.
Muitas extensões fazem referência a bibliotecas JavaScript externas, como a biblioteca jQuery ou as bibliotecas de API para terceiros. Valide que a URL das bibliotecas externas aponta para um local confiável da biblioteca. Por exemplo, se o conector fizer referência à biblioteca jQuery, certifique-se de que ela esteja em um site que é considerado padrão e seguro.
Todas as extensões devem usar o protocolo HTTPS (https://
) para hospedar suas extensões. Examine os arquivos de origem da extensão para garantir que as referências a bibliotecas externas que também estejam usando o HTTPS ou estejam hospedadas no mesmo site da extensão. A única exceção à solicitação do HTTPS é se a extensão estiver hospedada no mesmo computador com o Tableau (http://localhost
).
Na medida do possível, tente entender o que o código está fazendo. Em particular, tente entender como o código está criando solicitações para os sites externos e quais informações são enviadas na solicitação. Verifique se algum dado fornecido pelo usuário está validado a impedir o script entre sites.
Entenda o acesso aos dados
A API de extensões do Tableau fornece métodos que podem acessar os nomes de tabelas ativas e campos na fonte de dados, as descrições de resumo das conexões da fonte de dados e os dados subjacentes em uma planilha. Se uma extensão utiliza algum desses métodos em uma exibição, o desenvolvedor da extensão deve declarar que a extensão requer permissão a dados completos no arquivo de manifesto (.trex
). A declaração se parece com o seguinte.
<permissions>
<permission>full data</permission>
</permissions>
O Tableau usa essa declaração para fornecer um prompt aos usuário no momento da execução, que oferece a opção de permitir o acesso. Se a extensão usar algum desses métodos sem declarar uma permissão de dados completos no arquivo de manifesto, ela será carregada, mas as chamadas do método falharão.
Para obter informações sobre como uma extensão acessa os dados a partir do painel e dos métodos JavaScript usados, consulte Acesso aos dados subjacentes(O link abre em nova janela) na API de extensões do Tableau. Para entender melhor o que a extensão pode obter sobre os dados, é possível usar a extensão de painel de amostra DataSources(O link abre em nova janela) (disponível no Repositório GitHub da API de extensões do Tableau(O link abre em nova janela)) para ver quais dados são expostos quando o método getDataSourcesAsync()
é chamado.
Testar a extensão em um ambiente isolado
Se possível, teste a extensão em um ambiente que esteja isolado do seu ambiente de produção e de computadores de usuário. Por exemplo, adicione uma extensão de painel ou visualização a uma lista segura em um computador de teste ou máquina virtual que esteja executando uma versão do Tableau Server que não é usada para a produção.
Monitorar o tráfego criado pela extensão de painel
Ao testar uma extensão habilitada para rede, use uma ferramenta como Fiddler(O link abre em nova janela), Charles HTTP proxy(O link abre em nova janela) ou Wireshark(O link abre em nova janela) para examinar as solicitações e respostas feitas pela extensão. Certifique-se de que entendeu qual conteúdo a extensão está exigindo. Examine o tráfego para garantir que a extensão não esteja lendo os dados ou o código que não são diretamente relacionados à finalidade da extensão.