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 possibilité a été ajoutée dans les versions de maintenance d’août 2024 de RMT.
Si des en-têtes de réponse ont été modifiés, vous devez redémarrer RMT.
Important : les modifications apportées aux en-têtes de réponse peuvent interrompre RMT. Si vous apportez des mises à jour aux en-têtes, faites ensuite des tests pour vérifier que RMT fonctionne comme attendu.
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ées à 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é spécifique
Pour obtenir un en-tête de réponse personnalisé spécifique :
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. Tous les doublons sont éliminé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é spécifique
Pour définir ou modifier un en-tête de réponse personnalisé spécifique :
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 (si applicable).
Par exemple, cette commande définit les valeurs « timeout » et « max » pour « keep alive » :
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
Définition d’une valeur d’en-tête de réponse personnalisée sur une valeur vide
Pour toutes les clés rmtadmin set, à l’exception de l’en-tête de réponse personnalisé, vous devez inclure une valeur. Avec les en-têtes de réponse personnalisés, vous pouvez définir une clé sur Aucune valeur. Cet exemple définit la clé X-Frame-Options sur une valeur vide :
> 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.
Que voudriez-vous faire ici ? 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 définir la clé sur une valeur vide.
Par exemple, par défaut, RMT génère 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 définir sur DENY :
> rmtadmin set server:web:responseheaders:X-Frame-Options --remove
Mais si vous ne souhaitez pas que RMT envoie quoi que ce soit, vous pouvez le définir sur 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 avertira mais vous permettra 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 une fois que vous apporté une quelconque modification aux en-têtes de réponse.
