Cabeçalhos de resposta do Resource Monitoring Tool do Tableau (RMT)

Este artigo descreve como definir cabeçalhos de resposta personalizados do Resource Monitoring Tool do Tableau. Essa capacidade foi adicionada nas versões de manutenção de agosto de 2024 do RMT.

Quaisquer alterações nos cabeçalhos de resposta exigem uma reinicialização do RMT.

Importante: alterações nos cabeçalhos de resposta podem interromper o RMT. Se você fizer atualizações nos cabeçalhos, faça testes depois de fazer qualquer alteração para confirmar se o RMT está funcionando como deveria.

Visualização e atualização de cabeçalhos de resposta personalizados

Você pode visualizar e alterar os cabeçalhos de resposta personalizados usando os comandos rmtadmin get e rmtadmin set.

Obter uma lista de todos os cabeçalhos de resposta personalizados

Para visualizar uma lista de cabeçalhos de resposta personalizados definidos atualmente, execute este comando:

rmtadmin get server:web:responseheaders

Por exemplo:

> rmtadmin get server:web:responseheaders
server:web:responseHeaders:Access-Control-Allow-Origin = *
server:web:responseHeaders:Connection = Keep-Alive
server:web:responseHeaders:X-Frame-Options = DENY
server:web:responseHeaders:X-Cache-Info = not cacheable; meta data too large

Obter o valor de um cabeçalho de resposta personalizado específico

Para obter um cabeçalho de resposta personalizado específico:

rmtadmin get server:web:responseheader:<some header>

Por exemplo:

> rmtadmin get server:web:responseheader:X-Frame-Options
server:web:responseHeaders:X-Frame-Options = DENY

Se você tentar obter ou definir um cabeçalho de resposta personalizado inexistente, esse erro será exibido:

> rmtadmin get server:web:responseheaders:<non-existent header>
[ERR] Config key not found. Key: server:web:responseHeaders:<non-existent header>

Você pode obter várias chaves. Todas as duplicatas são descartadas. As chaves inválidas serão listadas no final:

> rmtadmin get server:web:responseheaders server:web:responseheaders:SomethingNew server:web:responseHeaders:Connection
server:web:responseHeaders:Access-Control-Allow-Origin = *
server:web:responseHeaders:Connection = Keep-Alive
server:web:responseHeaders:X-Frame-Options = DENY
server:web:responseHeaders:X-Cache-Info = not cacheable; meta data too large
[ERR] Config key not found. Key: server:web:responseheaders:SomethingNew

Definir ou atualizar um cabeçalho de resposta personalizado específico

Para definir ou alterar um cabeçalho de resposta personalizado específico:

rmtadmin set server:web:responseheader:<some header>

Por exemplo:

> rmtadmin set server:web:responseheaders:X-Frame-Options = Allow
Config value set successfully. Key: server:web:responseHeaders:X-Frame-Options
server:web:responseHeaders:X-Frame-Options = Allow

Cabeçalhos são uma sequência do cabeçalho completo e quaisquer pares de chave-valor (se aplicável).

Por exemplo, isso define o tempo limite de manutenção ativa e os valores máximos:

rmtadmin set server:web:responseheader:connection "Keep-Alive: timeout=5, max=997"
Config value set successfully. Key: server:web:responseHeaders:Connection
server:web:responseHeaders:Connection = "Keep-Alive: timeout=5, max=997"

Remover um cabeçalho de resposta personalizado

> rmtadmin set server:web:responseheaders:X-Frame-Options --remove
Config value successfully removed. Key: server:web:responseHeaders:X-Frame-Options

Remover um valor de configuração comum

Não é possível remover um valor de configuração comum, você receberá um erro se tentar fazer isso:

> rmtadmin set db:username --remove
[ERR] The --remove argument is not valid for this key. Key: db:username

Definir um valor de cabeçalho de resposta personalizado como um valor vazio

Com todas as chaves rmtadmin set, exceto o cabeçalho de resposta personalizado, você deve incluir um valor. Com cabeçalhos de resposta personalizados, você pode definir uma chave como sem valor. Este exemplo define a chave X-Frame-Options como um valor vazio:

> rmtadmin set server:web:responseheaders:X-Frame-Options
Config value set successfully. Key: server:web:responseheaders:X-Frame-Options
server:web:responseheaders:X-Frame-Options =

Isso é diferente de remover o cabeçalho X-Frame-Options.

Por que você deveria fazer isso? O RMT gera alguns cabeçalhos de resposta personalizados por padrão e, se quiser impedir que o RMT inclua um cabeçalho, defina a chave como um valor vazio.

Por exemplo, por padrão, o RMT gera um cabeçalho de resposta com X-Frame-Options = Deny. É possível criar um cabeçalho de resposta personalizado para X-Frame-Options:

> rmtadmin set server:web:responseheaders:X-Frame-Options ALLOW

Para voltar ao padrão, você pode removê-lo completamente ou defini-lo como DENY:

> rmtadmin set server:web:responseheaders:X-Frame-Options --remove

Mas se você não quiser que o RMT envie alguma coisa, poderá definir o valor como um valor vazio:

> rmtadmin set server:web:responseheaders:X-Frame-Options

Cabeçalhos inválidos

O RMT permite que você defina cabeçalhos de resposta inválidos. Se o cabeçalho de resposta especificado não for válido, o RMT o avisará, mas permitirá que você defina o valor. É sua responsabilidade verificar se o RMT está funcionando corretamente após atualizar os cabeçalhos de resposta.

Não é possível definir “responseheaders”. Você só pode definir chaves filhas individuais no cabeçalho de resposta.

rmtadmin set server:web:responseheaders
[ERR] Key cannot be set: server:web:responseHeaders

 

Importante: Teste o RMT após fazer quaisquer alterações nos cabeçalhos de resposta.

Agradecemos seu feedback!Seu feedback foi enviado. Obrigado!