ヘッダー削除ポリシー

ポリシー名

ヘッダーの削除

概要

要求または応答からヘッダーを削除する

カテゴリ

変換

使用可能な最小 Flex Gateway バージョン

v1.0.0

返される状況コード

500 - 評価されなかった式が設定に含まれる。

概要

キー-値ペアを使用して、削除するヘッダーのインバウンドおよびアウトバウンドマップを指定すると、ヘッダー削除ポリシーにより、リストされたすべてのヘッダーがメッセージの要求または応答から削除されます。

header inject remove diagram

必要に応じて、ヘッダーの値に DataWeave 式を含めることができます。この例では、設定されている次の式に一致するすべてのヘッダーがメッセージに挿入されます。

“#[attributes.requestPath]”

次のヘッダーは削除できません。 accept、 host、 content-type、 content-length、 date、 transfer-encoding、 connection。

ポリシーのパラメーターの設定

Flex Gateway のローカルモード

ローカルモードでは、宣言型の設定ファイルを使用してヘッダーの削除ポリシーを API に適用します。以下のポリシー定義とパラメーターの表を参照してください。

- policyRef:
    name: header-removal-flex
  config:
    inboundHeaders: <array> // OPTIONAL, default: []
    outboundHeaders: <array> // OPTIONAL, default: []
パラメーター 必須または省略可能 デフォルト値 説明

inboundHeaders

省略可能

空の配列

メッセージ処理の先頭で削除するヘッダー名または正規表現のマップ。例: Cache-Control, Access-Control.*

outboundHeaders

省略可能

空の配列

メッセージ処理の末尾で削除するヘッダー名または正規表現のマップ。例: Access-Control-Allow-Credentials

inboundHeaders​ と ​outboundHeaders​ の両方を空にすることはできません。

リソースの設定例

- policyRef:
    name: header-removal-flex
    config:
      inboundHeaders:
        - "Cache-Control"
        - "Access-Control.*"
      outboundHeaders:
        - "Access-Control-Allow-Credentials"

Flex Gateway の接続モードと Mule ゲートウェイ

UI からヘッダー削除ポリシーを API に適用する場合、次のパラメーターを設定できます。

パラメーター 説明

Inbound Header Map (インバウンドヘッダーマップ)

メッセージ処理の先頭で削除するヘッダー名または正規表現のリスト (カンマ区切り)。例: Cache-Control, Access-Control.*

Outbound Header Map (アウトバウンドヘッダーマップ)

メッセージ処理の末尾で削除するヘッダー名または正規表現のリスト (カンマ区切り)。例: Access-Control-Allow-Credentials

Method & Resource conditions (メソッドとリソースの条件)

API の一部またはすべてのメソッドおよびリソースに設定を追加するオプション

ポリシーのしくみ

ヘッダー削除ポリシーのパラメーターに一致するすべてのヘッダーがメッセージから削除されるため、パラメーターの設定方法については注意する必要があります。

たとえば、次のパラメーター設定では、単語 ​Access-Control​ で始まるヘッダー (​Access-Control-Allow-Credentials​ ヘッダーや ​Access-Control-Allow-Origin​ ヘッダーなど) がメッセージから削除されます。この設定により、​Cache-Control​ ヘッダーも削除されます。

remove inbound header
Figure 1. インバウンドヘッダー