Kong Gateway 3.2.x 下位互換性のない変更
アップグレードする前に、現在のインストールに影響するこのバージョンおよび以前のバージョンの構成または下位互換性のない変更を確認してください。
導入方法や使用している機能によっては、異なるアップグレード方法を採用する必要があるかもしれません。 たとえば、カスタムプラグイン。
プラグイン
プラグインの下位互換性のない変更については、お使いのKong GatewayバージョンのKong Gateway変更履歴を参照してください。
PostgreSQL SSLバージョン更新
デフォルトの PostgreSQL SSL バージョンが TLS 1.2 に引き上げられました。
これにより、 pg_ssl_version
(kong.conf
を通じて設定) が変更されます。
- デフォルト値は
tlsv1_2
になりました。 -
pg_ssl_version
は、以前はどのような文字列でも使用可能でした。このバージョンでは、tlsv1_1
、tlsv1_2
、tlsv1_3
、またはany
のいずれかの値が必要です。
これは、PostgreSQL 12.x 以降の設定ssl_min_protocol_version
を反映します。そのパラメータの詳細については、PostgreSQL documentationを参照してください。
kong.conf
のデフォルト設定を使用するには、PostgresサーバーがTLS 1.2以降のバージョンをサポートしていることを確認するか、TLSのバージョンを自分で設定します。
tlsv1_2
より前の TLS バージョンはすでに非推奨になっており、PostgreSQL 12.x 以降では安全ではないと見なされます。
Kong-Debugヘッダーの変更
デバッグのためにKong-Debug
ヘッダーを制限できるよう、allow_debug_header
構成プロパティをkong.conf
に追加しました。このオプションのデフォルトはoff
です。
これまでKong-Debug
ヘッダーを使用してデバッグ情報を提供していた場合、引き続きデバッグ情報を入手するには、kong.conf
でallow_debug_header: on
を設定してください。
JWTプラグイン
JWT プラグインは、JWTトークンの検索場所に異なるトークンがあるリクエストをすべて拒否するようになりました。
Sessionライブラリのアップグレード
lua-resty-session
ライブラリがv4.0.0にアップグレードされました。このバージョンには、セッションライブラリの完全なリライトが含まれています。
このアップグレードは、次のプラグインに影響します。
- Sessionプラグイン
- OpenID Connect プラグイン
- SAMLプラグイン
- Kong ManagerおよびDev Portalのセッションを含む、バックグラウンドでSessionまたはOpenID Connectプラグインを使用するすべてのセッション構成。
このバージョンにアップグレードすると、既存のセッションはすべて無効になります。このバージョンでセッションが期待どおりに動作するには、すべてのノードでKong Gateway 3.2.x以降を実行する必要があります。複数のデータプレーンが異なるバージョンを実行している場合、ユーザーが異なるDPにアクセスするたびに、同じエンドポイントでも、前のセッションは無効になります。
そのため、アップグレード中は、バージョンが混在するプロキシノードをできるだけ実行しないことをお勧めします。その間、無効なセッションによってエラーが発生し、部分的なダウンタイムが発生する可能性があります。
次のような動作が予想されます。
- コントロールプレーンのアップグレード後 :既存のKong ManagerとDev Portalのセッションは無効になり、すべてのユーザーは再ログインする必要があります。
- データプレーン(DP)のアップグレード後 :既存のプロキシセッションは無効になります。IdPが設定されている場合、ユーザーはIdPに再度ログインする必要があります。
Session構成パラメーターの変更
セッションライブラリのアップグレードには、新しいパラメータ、変更されたパラメータ、削除されたパラメータが含まれ、それぞれ次のように機能します。
-
cookie_lifetime
を置き換える新しいパラメータidling_timeout
のデフォルト値は900です。 違う設定をしないかぎり、セッションはアイドリング状態が900秒(15分)続くと期限切れになります。 - 新しいパラメータ
absolute_timeout
のデフォルト値は86400です。 違う設定をしないかぎり、セッションは86400秒(24時間)後に期限切れになります。 - 名前が変更されたすべてのパラメータは、古い名前でも引き続き機能します。
- 削除されたパラメータは機能しなくなります。 設定が壊れることはなく、セッションは 機能し続けますが、構成には何も貢献しません。
既存のセッション構成は、引き続き古いパラメータで構成されたとおりに機能します。
すべてのCPノードとDPノードがアップグレードされるまで、パラメーターを新しいものに変更 しないでください 。
すべてのCPおよびDPノードを3.2にアップグレードし、環境が安定していることを確認したら、パラメータを 新しい名前に変更したバージョンに更新し、予期しない動作を回避するためにセッション構成から削除されたパラメータを消去することを お勧めします。
Sessionプラグイン
次のパラメータと、それらが受け入れる値が変更されました。新しく受け入れられる値の詳細については、Sessionプラグインのドキュメントを参照してください。
古いパラメータ名 | 新しいパラメータ名 |
---|---|
cookie_lifetime |
rolling_timeout |
cookie_idletime |
idling_timeout |
cookie_samesite |
cookie_same_site |
cookie_httponly |
cookie_http_only |
cookie_discard |
stale_ttl |
cookie_renew |
削除されました。置換パラメータはありません。 |
SAMLプラグイン
次のパラメータと、それらが受け入れる値が変更されました。新しく受け入れられる値の詳細については、SAMLプラグインのドキュメントを参照してください。
古いパラメータ名 | 新しいパラメータ名 |
---|---|
session_cookie_lifetime |
session_rolling_timeout |
session_cookie_idletime |
session_idling_timeout |
session_cookie_samesite |
session_cookie_same_site |
session_cookie_httponly |
session_cookie_http_only |
session_memcache_prefix |
session_memcached_prefix |
session_memcache_socket |
session_memcached_socket |
session_memcache_host |
session_memcached_host |
session_memcache_port |
session_memcached_port |
session_redis_cluster_maxredirections |
session_redis_cluster_max_redirections |
session_cookie_renew |
削除されました。置換パラメータはありません。 |
session_cookie_maxsize |
削除されました。置換パラメータはありません。 |
session_strategy |
削除されました。置換パラメータはありません。 |
session_compressor |
削除されました。置換パラメータはありません。 |
OpenID Connect プラグイン
次のパラメータと、それらが受け入れる値が変更されました。新しく受け入れられる値の詳細については、OpenID Connectプラグインのドキュメントを参照してください。
古いパラメータ名 | 新しいパラメータ名 |
---|---|
authorization_cookie_lifetime |
authorization_rolling_timeout |
authorization_cookie_samesite |
authorization_cookie_same_site |
authorization_cookie_httponly |
authorization_cookie_http_only |
session_cookie_lifetime |
session_rolling_timeout |
session_cookie_idletime |
session_idling_timeout |
session_cookie_samesite |
session_cookie_same_site |
session_cookie_httponly |
session_cookie_http_only |
session_memcache_prefix |
session_memcached_prefix |
session_memcache_socket |
session_memcached_socket |
session_memcache_host |
session_memcached_host |
session_memcache_port |
session_memcached_port |
session_redis_cluster_maxredirections |
session_redis_cluster_max_redirections |
session_cookie_renew |
削除されました。置換パラメータはありません。 |
session_cookie_maxsize |
削除されました。置換パラメータはありません。 |
session_strategy |
削除されました。置換パラメータはありません。 |
session_compressor |
削除されました。置換パラメータはありません。 |
パッチ
3.2.2.4
Amazon Linux 2022から2023への名称変更
Amazon Linux 2022アーティファクトは、AWS独自の名前変更に基づいて、Amazon Linux 2023に名前が変更されます。
Ubuntu 18.04のサポートの削除
Ubuntu 18.04(”Bionic”)でのKong Gatewayの実行は、 Ubuntu 18.04の標準サポートが2023年6月をもって終了したため、非推奨となりました。Kong Gateway 3.2.2.4以降、Kongは新しいUbuntu 18.04イメージまたはパッケージををビルドしていません。また、Kongは Ubuntu 18.04でのパッケージのインストールをテストしません。