En-têtes de réponse (RMT) Tableau Resource Monitoring Tool
Cet article décrit comment définir des en-têtes de réponse personnalisés dans Tableau Resource Monitoring Tool. Cette fonctionnalité a été ajoutée dans les versions de maintenance d’août 2024 de RMT.
Toute modification des en-têtes de réponse nécessite un redémarrage de RMT.
Important : Les modifications apportées aux en-têtes de réponse peuvent interrompre le RMT. Si vous apportez des mises à jour aux en-têtes, effectuez un test après chaque modification pour confirmer que RMT fonctionne correctement.
Affichage et mise à jour des en-têtes de réponse personnalisés
Vous pouvez afficher et modifier les en-têtes de réponse personnalisés à l’aide des commandes rmtadmin get et rmtadmin set.
Obtenir une liste de tous les en-têtes de réponse personnalisés
Pour afficher une liste des en-têtes de réponse personnalisés actuellement définis, exécutez cette commande :
rmtadmin get server:web:responseheaders
Par exemple :
> 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
Obtenir la valeur d’un en-tête de réponse personnalisé précis
Pour obtenir un en-tête de réponse personnalisé précis :
rmtadmin get server:web:responseheader:<some header>
Par exemple :
> rmtadmin get server:web:responseheader:X-Frame-Options server:web:responseHeaders:X-Frame-Options = DENY
Si vous tentez d’obtenir ou de définir un en-tête de réponse personnalisé inexistant, cette erreur s’affiche :
> rmtadmin get server:web:responseheaders:<non-existent header> [ERR] Config key not found. Key: server:web:responseHeaders:<non-existent header>
Vous pouvez obtenir plusieurs clés. Les doublons sont supprimés. Les clés non valides seront répertoriées à la fin :
> 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
Définir ou mettre à jour un en-tête de réponse personnalisé précis
Pour définir ou modifier un en-tête de réponse personnalisé précis :
rmtadmin set server:web:responseheader:<some header>
Par exemple :
> 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
Les en-têtes sont une chaîne de l’en-tête complet et de toutes les paires clé-valeur (le cas échéant).
Par exemple, ceci définit le délai et les valeurs maximales du maintien actif :
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"
Supprimer un en-tête de réponse personnalisé
> rmtadmin set server:web:responseheaders:X-Frame-Options --remove Config value successfully removed. Key: server:web:responseHeaders:X-Frame-Options
Supprimer une valeur de configuration normale
Vous ne pouvez pas supprimer une valeur de configuration normale et une erreur s’affichera si vous tentez de le faire :
> rmtadmin set db:username --remove [ERR] The --remove argument is not valid for this key. Key: db:username
Attribution d’une valeur vide à une valeur d’en-tête de réponse personnalisée
Vous devez inclure une valeur pour toutes les clés rmtadmin set, à l’exception de l’en-tête de réponse personnalisé. Avec les en-têtes de réponse personnalisés, vous pouvez attribuer une valeur vide à une clé. Cet exemple attribue une valeur vide à la clé X-Frame-Options :
> 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 =
Cette opération diffère de la suppression de l’en-tête X-Frame-Options.
Pourquoi voudriez-vous faire cela? RMT génère des en-têtes de réponse personnalisés par défaut, et si vous souhaitez empêcher RMT d’inclure un en-tête, vous pouvez attribuer une valeur vide à la clé.
Par exemple, RMT génère par défaut un en-tête de réponse avec X-Frame-Options = Deny. Vous pouvez créer un en-tête de réponse personnalisé pour X-Frame-Options :
> rmtadmin set server:web:responseheaders:X-Frame-Options ALLOW
Pour revenir à la valeur par défaut, vous pouvez la supprimer entièrement ou la régler sur DENY :
> rmtadmin set server:web:responseheaders:X-Frame-Options --remove
Cependant, si vous souhaitez que RMT n’envoie aucune information, vous pouvez lui attribuer une valeur vide :
> rmtadmin set server:web:responseheaders:X-Frame-Options
En-têtes non valides
RMT vous permet de définir des en-têtes de réponse non valides. Si l’en-tête de réponse que vous spécifiez n’est pas valide, RMT vous avertit, mais vous permet de définir la valeur. Il est de votre responsabilité de vérifier que RMT fonctionne correctement après la mise à jour des en-têtes de réponse.
Vous ne pouvez pas définir « responseheaders ». Vous ne pouvez définir que des clés enfants individuelles dans l’en-tête de réponse.
rmtadmin set server:web:responseheaders [ERR] Key cannot be set: server:web:responseHeaders
Important : Testez RMT après avoir modifié les en-têtes de réponse.
