コンテンツにスキップ
Kong Logo | Kong Docs Logo
  • ドキュメント
    • API仕様を確認する
      View all API Specs すべてのAPI仕様を表示 View all API Specs arrow image
    • ドキュメンテーション
      API Specs
      Kong Gateway
      軽量、高速、柔軟なクラウドネイティブAPIゲートウェイ
      Kong Konnect
      SaaSのエンドツーエンド接続のための単一プラットフォーム
      Kong AI Gateway
      GenAI インフラストラクチャ向けマルチ LLM AI Gateway
      Kong Mesh
      Kuma と Envoy をベースにしたエンタープライズサービスメッシュ
      decK
      Kongの構成を宣言型で管理する上で役立ちます
      Kong Ingress Controller
      Kubernetesクラスタ内で動作し、Kongをプロキシトラフィックに設定する
      Kong Gateway Operator
      YAMLマニフェストを使用してKubernetes上のKongデプロイメントを管理する
      Insomnia
      コラボレーティブAPI開発プラットフォーム
  • Plugin Hub
    • Plugin Hubを探索する
      View all plugins すべてのプラグインを表示 View all plugins arrow image
    • 機能性 すべて表示 View all arrow image
      すべてのプラグインを表示
      AI's icon
      AI
      マルチ LLM AI Gatewayプラグインを使用してAIトラフィックを管理、保護、制御する
      認証's icon
      認証
      認証レイヤーでサービスを保護する
      セキュリティ's icon
      セキュリティ
      追加のセキュリティレイヤーでサービスを保護する
      トラフィック制御's icon
      トラフィック制御
      インバウンドおよびアウトバウンドAPIトラフィックの管理、スロットル、制限
      サーバーレス's icon
      サーバーレス
      他のプラグインと組み合わせてサーバーレス関数を呼び出します
      分析と監視's icon
      分析と監視
      APIとマイクロサービストラフィックを視覚化、検査、監視
      変革's icon
      変革
      Kongでリクエストとレスポンスをその場で変換
      ログ記録's icon
      ログ記録
      インフラストラクチャに最適なトランスポートを使用して、リクエストと応答データをログに記録します
  • サポート
  • コミュニティ
  • Kongアカデミー
デモを見る 無料トライアルを開始
Kong Gateway
3.8.x
  • Home icon
  • Kong Gateway
  • Reference
  • Expressions Language
  • 言語リファレンス
report-issue問題を報告する
  • Kong Gateway
  • Kong Konnect
  • Kong Mesh
  • Kong AI Gateway
  • Plugin Hub
  • decK
  • Kong Ingress Controller
  • Kong Gateway Operator
  • Insomnia
  • Kuma

  • ドキュメント投稿ガイドライン
  • 3.10.x (latest)
  • 3.9.x
  • 3.8.x
  • 3.7.x
  • 3.6.x
  • 3.5.x
  • 3.4.x (LTS)
  • 3.3.x
  • 2.8.x (LTS)
  • アーカイブ (2.6より前)
  • はじめに
    • Kong Gatewayの概要
    • サポート
      • バージョンサポートポリシー
      • サードパーティの依存関係
      • ブラウザサポート
      • 脆弱性パッチ適用プロセス
      • ソフトウェア部品表
    • 安定性
    • リリースノート
    • 破壊的な変更
      • Kong Gateway 3.8.x
      • Kong Gateway 3.7.x
      • Kong Gateway 3.6.x
      • Kong Gateway 3.5.x
      • Kong Gateway 3.4.x
      • Kong Gateway 3.3.x
      • Kong Gateway 3.2.x
      • Kong Gateway 3.1.x
      • Kong Gateway 3.0.x
      • Kong Gateway 2.8.x 以前
    • キーコンセプト
      • サービス
      • ルート
      • コンシューマ
      • アップストリーム
      • プラグイン
      • コンシューマグループ
    • How Kong Works
      • ルーティングトラフィック
      • ロードバランシング
      • ヘルスチェックとサーキットブレーカ
    • 用語集
  • Kong を始めよう
    • Kong をゲットする
    • サービスとルート
    • レート制限
    • プロキシキャッシュ
    • キー認証
    • ロードバランシング
  • コングをインストールする
    • 概要
    • Kubernetes
      • 概要
      • Kong Gatewayをインストール
      • Admin API
      • Kong Manager をインストールする
    • Docker
      • docker run を使用する
      • 独自の Docker イメージをビルドする
    • Linux
      • Amazon Linux
      • Debian
      • Red Hat
      • Ubuntu
    • インストール後
      • データストアを設定
      • エンタープライズライセンスを適用
      • Kong Managerを有効にする
  • Kong in production
    • 展開のトポロジーズ
      • 概要
      • ハイブリッドモード
        • 概要
        • ハイブリッドモードでKong Gatewayをデプロイする
      • DB-lessデプロイ
      • 繁体字版
    • Running Kong
      • non-rootユーザーとしてKongを実行しています
      • 管理者 API の保護
      • systemdの使用
    • アクセスコントロール
      • コングゲートウェイを安全に開始
      • プログラムによる管理者の作成
      • RBAC を有効にする
    • ライセンス
      • 概要
      • ライセンスをダウンロード
      • エンタープライズライセンスのデプロイ
      • ライセンスAPIの使用
      • ライセンス使用状況をモニターする
    • ネットワーク
      • デフォルトのポート
      • DNSに関する考察
      • ネットワークとファイアウォール
      • CP/DP Communication through a Forward Proxy
      • PostgreSQL TLS
        • PostgreSQL TLS の設定
        • PostgreSQL TLS のトラブルシューティング
    • Kongの設定ファイル
    • 環境変数
    • KongからウェブサイトとAPIを提供する
    • モニタリング
      • 概要
      • Prometheus
      • StatsD
      • Datadog
      • ヘルスチェックプローブ
      • AIメトリクスを公開してグラフ
    • トレース
      • 概要
      • カスタム・トレース・エクスポーターの作成
      • トレースAPIリファレンス
    • リソースサイズのガイドライン
    • セキュリティアップデートプロセス
    • ブルー・グリーンの展開
    • カナリアのデプロイ
    • クラスタリングリファレンス
    • パフォーマンス
      • パフォーマンステストのベンチマーク
      • パフォーマンスのベンチマークを作成
      • Brotli圧縮によるパフォーマンスの向上
    • ロギングとデバッグ
      • ログの参照
      • ダイナミックログレベルの更新
      • ゲートウェイログをカスタマイズ
      • デバッグリクエスト
      • AIゲートウェイ分析
    • gRPCサービスの設定
    • 式ルータを使用
    • アップグレードと移行
      • 香港ゲートウェイ3.x.xをアップグレードする
      • バックアップと復元
      • アップグレードの戦略
        • デュアルクラスターのアップグレード
        • インプレイスアップグレード
        • 青緑色のアップグレード
        • ローリングアップグレード
      • 2.8 LTSから3.4 LTSにアップグレード
      • OSSからエンタープライズへ移行
      • 移行ガイドライン Cassandra から PostgreSQL
      • 新しい DNS クライアントに移行
      • 破壊的な変更
  • Kong Gateway Enterprise
    • 概要
    • シークレット管理
      • 概要
      • はじめに
      • ローテーション
      • 高度な使い方
      • バックエンドの設定
        • 概要
        • 環境変数
        • AWS シークレットマネージャー
        • Azure Key Vault
        • Google Cloud Secret Manager
        • HashiCorp Vault
      • How-To
        • AWS シークレットマネージャでデータベースを保護する
      • 参照フォーマット
    • 動的なプラグインの順序
      • 概要
      • 動的なプラグインの順序を始めましょう
    • 監査ログ
    • キーリングとデータ暗号化
    • ワークスペース
    • コンシューマグループ
    • イベントフック
    • データ プレーンレジリエンスの設定
    • 制御機の停止管理について
    • FIPS 140-2
      • 概要
      • FIPS 準拠パッケージをインストール
      • FIPS 140-2 準拠プラグイン
    • AWS IAMでKong Gateway Amazon RDSデータベースを認証する
    • 署名された香港の画像の署名を確認します
    • 署名された香港画像のビルド証明書を確認する
  • Kong AI Gateway
    • 概要
    • AI ゲートウェイを始めよう
    • LLM プロバイダー統合ガイド
      • OpenAI
      • Cohere
      • Azure
      • Anthropic
      • ミストラル
      • Llama2
    • AIプラットフォーム統合ガイド
      • Gemini
      • Amazon Bedrock
    • AIゲートウェイ分析
    • AI指標を公開・グラフ
    • AI Gateway plugins
  • Kong Manager
    • 概要
    • Kong Managerを有効にする
    • Kong Manager を始めましょう
      • サービスとルート
      • レート制限
      • プロキシキャッシュ
      • コンシューマーとの認証
      • 負荷バランス
    • 認証と承認
      • 概要
      • スーパー管理者を作成
      • ワークスペースとチーム
      • パスワードとRBACトークンをリセット
      • ベーシック認証
      • LDAP
        • LDAP の設定
        • LDAP サービス ディレクトリ マッピング
      • OIDC
        • OIDCの設定
        • OIDC 認証済みグループマッピング
        • 以前の設定から移行
      • セッション
      • RBAC
        • 概要
        • RBACを有効にする
        • ロールと権限を追加
        • ユーザーを作成
        • 管理者を作成
    • ネットワーク設定
    • ワークスペース
    • 顧客グループを作成
    • メールを送信中
    • トラブルシューティング
  • カスタムプラグインを開発
    • 概要
    • はじめに
      • はじめに
      • プラグインプロジェクトの設定
      • プラグインテストを追加
      • プラグイン設定を追加
      • 外部サービスを消費する
      • プラグインをデプロイ
    • ファイル構造
    • カスタムロジックの実装
    • プラグインの設定
    • データストアへのアクセス
    • カスタムエンティティの保存
    • カスタムエンティティをキャッシュ中
    • 管理者 API の拡張
    • テストを書く
    • 設置と配布
    • プロキシ-ワズムフィルター
      • プロキシワズムフィルタを作成
      • プロキシ-ワズムフィルタの設定
    • プラグイン開発キット
      • 概要
      • kong.client
      • kong.client.tls
      • kong.cluster
      • kong.ctx
      • kong.ip
      • kong.jwe
      • kong.log
      • kong.nginx
      • kong.node
      • kong.plugin
      • kong.request
      • kong.response
      • kong.router
      • kong.service
      • kong.service.request
      • kong.service.response
      • kong.table
      • kong.telemetry.log
      • kong.tracing
      • kong.vault
      • kong.websocket.client
      • kong.websocket.upstream
    • 他の言語でのプラグイン
      • 移動
      • Javascript
      • Python
      • コンテナでのプラグインの実行
      • 外部プラグインのパフォーマンス
  • Kong Plugins
    • 概要
    • 認証リファレンス
    • 複数の認証プラグインを許可
    • プラグインのキュー
      • 概要
      • プラグインキューイングリファレンス
  • Admin API
    • 概要
    • 宣言設定
    • Enterprise API
      • 情報ルート
      • 健康ルート
      • タグ
      • デバッグルート
      • サービス
      • ルート
      • コンシューマ
      • プラグイン
      • 証明書
      • CA 証明書
      • SNI
      • アップストリーム
      • ターゲット
      • ヴォールト
      • キー
      • チェーンをフィルター
      • ライセンス
      • ワークスペース
      • RBAC
      • 管理者
      • コンシューマグループ
      • イベントフック
      • キーリングとデータ暗号化
      • 監査ログ
      • Status API
    • オープンソースAPI
  • 参照
    • kong.conf
    • Nginx ディレクティブの注入中
    • CLI
    • キー管理
    • 表現の言語
      • 概要
      • 言語リファレンス
      • パフォーマンスの最適化
    • ライブラリのレート制限
    • WebAssembly
    • FAQ
enterprise-switcher-icon 次に切り替える: OSS
On this pageOn this page
  • 述部
  • 型システム
    • ストリング
    • IpCidr
    • IPアドレス
    • Int
    • 正規表現
  • 演算子
    • 詳細な説明
    • 含む、含まない
    • 含む
    • 型と演算子のセマンティクス
旧バージョンのドキュメントを参照しています。 最新のドキュメントはこちらをご参照ください。

言語リファレンス

このリファレンスでは、式ルーターに使用される式言語構造の各部分について説明します。

述部

述部は、次の形式をとる式コードの基本単位です。

http.path ^= "/foo/bar"

この述部の例は、次の構造に従っています。

  • http.path: フィールド
  • ^=:演算子
  • "/foo/bar": 定数値

型システム

式言語は厳密に型指定されています。このような操作が実際の フィールドと定数の型に対して意味がある場合にのみ、操作が実行されます。

実行時の型変換は、明示的または黙示的にもサポートされていません。指定された フィールドと定数で演算子を実行できない場合、型はルートが解析され、 エラーが返される時点で常に認識されています。

現在、次のタイプの式の言語をサポートしています。

型 説明 フィールド型 定数型
String 常に有効なUTF-8の文字列値。 ✅ ✅
IpCidr CIDR形式のIPアドレスの範囲。IPv4またはIPv6のいずれかです。 ❌ ✅
IpAddr 単一のIPアドレス。IPv4またはIPv6のいずれかです。 ✅ ✅
Int 64ビットの符号付き整数。 ✅ ✅
Regex Rustregexクレートによって指定された構文の正規表現。 ❌ ✅

さらに、式はArrayという複合型もサポートしています。配列型はType[]と記述されます。 たとえば、String[]やInt[]です。現在、配列はフィールド値にのみ存在できます。これらは、 1つのフィールドが複数の値を含む場合に使用されます。たとえば、 http.headers.xやhttp.queries.xです。

ストリング

文字列は有効なUTF-8シーケンスで、"content"のような文字列リテラルで定義可能です。 次のエスケープシーケンスがサポートされています。

エスケープシーケンス 説明
\n 改行文字
\r キャリッジリターン文字
\t 水平タブ文字
\\ \文字
\" "文字

さらに、式はr#"content"#のような生のリテラル文字列をサポートします。 この機能は、正規表現を書きたいときにエスケープを繰り返すのが面倒になった場合に 便利です。

たとえば、正規表現~ 演算子を使って http.path と /\d+\-\d+ を一致させたい場合、述部はリテラル文字列を使用して次のように記述されます。

http.path ~ "/\\d+\\-\\d+"

生の文字列リテラルを使用すると、次のように記述できます。

http.path ~ r#"/\d+\-\d+"#

IpCidr

IpCidrはクラスレスドメイン間ルーティング(CIDR)形式で幅広いIPアドレスを表します。

以下はIPv4の例です。

net.src.ip in 192.168.1.0/24

以下はIPv6の例です。

net.src.ip in fd00::/8

式パーサーは、ホスト部分にゼロ以外のビットが含まれるCIDRリテラルを拒否します。つまり、作成者の意図が不明瞭であるため、 192.168.0.1/24パーサーチェックに合格しません。

IPアドレス

IpAddrIPv4ドット10進表記、 または標準のIPv6アドレス形式で単一のIPアドレスを表します。

以下はIPv4の例です。

net.src.ip == 192.168.1.1

以下はIPv6の例です。

net.src.ip == fd00::1

Int

式には整数型が1つだけあります。すべての整数は符号付き64ビット整数です。整数 リテラルは 12345、-12345、または 0xab12ff などの16進形式や、 0751 のようなオクテット形式で書くことができます。

正規表現

正規表現はStringリテラルとして記述されますが、~正規表現演算子が存在すると解析され Rust regexクレート構文に従って有効性を確認されます。 例えば、以下の述部では、定数はRegexとして解析されます。

http.path ~ r#"/foo/bar/.+"#

演算子

式言語は、さまざまなデータ型に対して実行できる豊富な演算子をサポートしています。

| 演算子 | 名前 | 説明 | |—————-|———–|——————————————–| | == | イコール | フィールド値と定数値が等しい | | != | 等しくない | フィールド値と定数値が等しくない | | ~ | 正規表現の一致 | フィールド値が正規表現に一致する | | ^= | 接頭辞の一致 | フィールド値が定数値で始まる | | =^ | 接尾辞が一致 | フィールド値が定数値で終わる | | >= | より大きいか等しい | フィールド値が定数値と等しいかそれ以上 | | > | より大きい | フィールド値が定数値より大きい | | <= | 以下 | フィールド値が定数値以下である | | < | より小さい | フィールド値が定数値より小さい | | in | 内 | フィールド値が定数値内にある | | not in | 含まれていない | フィールド値が定数値内にない | | contains | 含む | フィールド値に定数値が含まれる | | && | および | 左辺と右辺の 両方の 式が評価される場合はtrueを返すtrue | | || | または | 左辺と右辺の いずれかの 式が評価される場合はtrueを返すtrue | | (Expression) | 括弧 | 最初に評価される式をグループ化する | | ! | Not | 括弧で囲まれた式の結果を否定します。 注意: !演算子は、 !(foo == 1)のような括弧で囲まれた式でのみ使用できます。 ! foo == 1のような単なる述語では使用 できません 。

詳細な説明

含む、含まない

これらの演算子は IpAddr と IpCidr タイプとともに使用され、IPリストのチェックを効率的に行います。 たとえば、 net.src.ip in 192.168.0.0/24 net.src.ipの値が 192.168.0.0/24の範囲内にある場合にのみtrueを返します。

含む

この演算子は、文字列が別の文字列内に存在するかどうかを確認するために使用されます。 たとえば、 fooがhttp.path内のどこかで見つかった場合、 http.path contains "foo" はtrueを返します。 これは、たとえば/foo 、 /abc/foo、または/xfooyのようなhttp.pathと一致します。

型と演算子のセマンティクス

各演算子で許可されるフィールドタイプと定数タイプの組み合わせは次のとおりです。 次の表では、行は述語の左側(LHS)に表示されるフィールドタイプを表しています。 一方、列は述語の右側(RHS)に表示される定数値タイプを表します。

フィールド(LHS)/定数(RHS)型 String IpCidr IpAddr Int Regex Expression
String ==、!=、~、^=、=^、contains ❌ ❌ ❌ ~ ❌
IpAddr ❌ in,not in == ❌ ❌ ❌
Int ❌ ❌ ❌ ==、!=、>=、>、<=、< ❌ ❌
Expression ❌ ❌ ❌ ❌ ❌ &&,||

注:

  • ~演算子は、 String ~ StringおよびString ~ Regexの両方をサポートすると説明されています。 実際には、 Regex定数値は右側にStringとしてのみ記述できます。 ~演算子が存在する場合、文字列値は正規表現として扱われます。 ~演算子を使用した場合でも、上記のStringエスケープルールは適用され、 Regexセクションで説明されているように、 ~演算子には生のリテラル文字列を使用する方が簡単です。
  • ~演算子は、入力の先頭に正規表現を自動的に固定しません。 つまり、 http.path ~ r#"/foo/\d"#は/foo/1または/some/thing/foo/1のようなパスと一致する可能性があります。 文字列の先頭からマッチさせる(正規表現を固定する)場合は、^ メタ文字を使用して手動で指定してください。たとえば、 http.path ~ r#"^/foo/\d"#などです。
  • IPアドレス関連の比較を ==、in、not in で行うときは、 アドレスタイプの異なるファミリーと定数値を指定すると、実行時、述部は常に falseを返します。
Thank you for your feedback.
Was this page useful?
情報が多すぎる場合 close cta icon
Kong Konnectを使用すると、より多くの機能とより少ないインフラストラクチャを実現できます。月額1Mリクエストが無料。
無料でお試しください
  • Kong
    APIの世界を動かす

    APIマネジメント、サービスメッシュ、イングレスコントローラーの統合プラットフォームにより、開発者の生産性、セキュリティ、パフォーマンスを大幅に向上します。

    • 製品
      • Kong Konnect
      • Kong Gateway Enterprise
      • Kong Gateway
      • Kong Mesh
      • Kong Ingress Controller
      • Kong Insomnia
      • 製品アップデート
      • 始める
    • ドキュメンテーション
      • Kong Konnectドキュメント
      • Kong Gatewayドキュメント
      • Kong Meshドキュメント
      • Kong Insomniaドキュメント
      • Kong Konnect Plugin Hub
    • オープンソース
      • Kong Gateway
      • Kuma
      • Insomnia
      • Kongコミュニティ
    • 会社概要
      • Kongについて
      • お客様
      • キャリア
      • プレス
      • イベント
      • お問い合わせ
  • 利用規約• プライバシー• 信頼とコンプライアンス
© Kong Inc. 2025