Red Hat ビルドの Quarkus 2.13 の リリースノート
第1章 Red Hat ビルドの Quarkus 2.13 の リリースノート リンクのコピーリンクがクリップボードにコピーされました!
本リリースノートでは、Red Hat ビルドの Quarkus 2.13 の新機能、主な技術上の変更点、テクノロジープレビューの機能、バグ修正、既知の問題、関連アドバイザリーに関する情報を提供します。アップグレードと後方互換性についての情報も、以前のリリースからの移行に役立つようになりました。
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
1.1. Red Hat build of Quarkus について リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus は、コンテナーおよび Red Hat OpenShift Container Platform と使用するために最適化された Kubernetes ネイティブ Java スタックです。Quarkus は、Eclipse MicroProfile、Eclipse Vert.x、Apache Camel、Apache Kafka、Hibernate ORM with Java Persistence API (JPA)、RESTEasy (JAX-RS)などの一般的な Java 標準、フレームワーク、およびライブラリーと連携するように設計されています。
開発者は、Java アプリケーションに必要な Java フレームワークを選択できます。これは、Java 仮想マシン (JVM) モードで実行することも、ネイティブモードでコンパイルして実行することもできます。Quarkus は、コンテナーファーストという手法で Java アプリケーションをビルドします。コンテナーファーストのアプローチにより、コンテナー化と、マイクロサービスと関数の効率的な実行が容易になります。このため、Quarkus アプリケーションのメモリーフットプリントは小さく、起動時間が短縮されます。
Quarkus はまた、統合設定、未設定のサービスの自動プロビジョニング、ライブコーディング、コード変更に関する即時フィードバックを提供する継続的テストなどの機能により、アプリケーション開発プロセスを最適化します。
Quarkus コミュニティーバージョンと Red Hat ビルドの Quarkus の相違点は、Quarkus コミュニティーバージョン と Red Hat ビルド の Quarkus の相違点 を参照し てください。
1.2. Quarkus コミュニティーバージョンと Red Hat ビルドの Quarkus の違い リンクのコピーリンクがクリップボードにコピーされました!
アプリケーション開発者は、Quarkus コミュニティーバージョンと製品化バージョンである Red Hat build of Quarkus (RHBQ)の 2 つの異なるバージョンの Quarkus にアクセスできます。
以下の表では、Quarkus コミュニティーバージョンと RHBQ の違いを示しています。
| 機能 | Quarkus コミュニティーバージョン | Red Hat build of Quarkus バージョン | 説明 |
|---|---|---|---|
| 最新のコミュニティー機能へのアクセス | はい | いいえ | Quarkus コミュニティーバージョンを使用すると、最新の機能開発にアクセスできます。 Red Hat では、コミュニティーがリリースされたすべてのバージョンに対応するように RHBQ をリリースしません。RHBQ 機能リリースの頻度は、約 6 カ月ごとに行われます。 |
| Red Hat によるエンタープライズサポート | いいえ | はい | Red Hat は、エンタープライズサポートを RHBQ にのみ提供しています。Quarkus コミュニティーバージョンに関する問題を報告するには、quarkusio/quarkus - Issues を参照してください。 |
| 長期サポートへのアクセス | いいえ | はい | RHBQ の各機能リリースは、次の機能リリースまで約 1 年間間完全にサポートされています。機能リリースが新しいバージョンに置き換えられた場合、Red Hat はさらに 6 カ月間のメンテナンスサポートを提供し続けます。詳細は、サポートと互換性 を参照し てください。 |
| 以前のリリースにバックポートされた Common Vulnerabilities and Exposures (CVE) の修正とバグ修正 | いいえ | はい | RHBQ では、選択した CVE の修正およびバグ修正は、定期的にサポートされているストリームにバックポートされます。Quarkus コミュニティーバージョンでは、CVE とバグ修正は通常、最新リリースでのみ利用可能になります。 |
| Red Hat OpenShift Container Platform および Red Hat Enterprise Linux (RHEL) でテストおよび検証済み | いいえ | はい | RHBQ は、Red Hat OpenShift Container Platform および RHEL でビルド、テスト、検証されています。Red Hat は、サブスクリプション契約に従って、サポートされる構成とテスト済みのインテグレーションについて、実稼働と開発の両方のサポートを提供します。詳細は、Red Hat build of Quarkus Supported Configurations を参照してください。 |
| 安全なビルドシステムを使用したソースからのビルド | いいえ | はい | RHBQ では、コアプラットフォームとサポートされるすべての拡張機能は、Red Hat が安全なソフトウェア配信を使用して提供します。つまり、これらはソースから構築され、セキュリティー問題についてスキャンされ、検証されたライセンスの使用が可能になります。 |
| JDK および GraalVM Mandrel ディストリビューションのサポートへのアクセス | いいえ | はい | RHBQ は、認定された OpenJDK ビルドと認定済みのネイティブ実行可能ファイルビルダーをサポートします。以下の警告を参照してください。詳細は、サポートされている設定 を参照してください。 |
Red Hat ビルドの Quarkus は、Red Hat ビルドの Quarkus ネイティブビルダーイメージ( Mandrel の製品化ディストリビューション)を使用したネイティブ Linux 実行可能ファイルの構築 をサポートします。
詳細は、Quarkus アプリケーションをネイティブ実行可能ファイルにコンパイルする を参照してください。Oracle GraalVM Community Edition (CE)、Mandrel Community Edition、またはその他の GraalVM ディストリビューションを使用したネイティブ実行可能ファイルのビルドは、Red Hat build of Quarkus ではサポートされていません。
1.3. 新機能、機能拡張、および技術的な変更 リンクのコピーリンクがクリップボードにコピーされました!
本セクションでは、Red Hat ビルドの Quarkus 2.13 で導入された新機能、機能拡張、および技術変更の概要を説明します。
1.3.1. クラウド リンクのコピーリンクがクリップボードにコピーされました!
1.3.1.1. Reactive SQL クライアントの Kubernetes サービスバインディングサポートが導入されました リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 バージョンには、リアクティブ SQL クライアントの Kubernetes サービスバインディングサポートが導入されました。
サービスバインディング用に以下の拡張機能が追加され、ワークロードのプロジェクションでサポートされます。
-
quarkus-reactive-mssql-client -
quarkus-reactive-mysql-client -
quarkus-reactive-pg-client
詳細は、サービスバインディング ガイド を参照してください。
1.3.1.2. Microsoft JDBC Driver for SQL Server for SQL Server が 7.2.2.jre8 から 11.2.0.jre11 に更新されました。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、SQL Server の Microsoft JDBC ドライバーが mssql-jdbcTRUSTED.2.jre8.jar から に更新されます。
mssql-jdbc-11. 2.0.jre11.jar
1.3.2. Core リンクのコピーリンクがクリップボードにコピーされました!
1.3.2.1. Apache Kafka UI リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、Kafka UI が Dev UI に導入されています。
quarkus-kafka-client エクステンションを使用するように Quarkus アプリケーションを設定し、開発モードで実行すると、Kafka UI は自動的に Kafka インスタンスに接続します。
Kafka UI を使用すると、次のタスクを実行できます。
- Kafka クラスターの管理
- トピックの一覧表示および作成
- レコードの可視化
- 新しいレコードの発行
- コンシューマーグループとその消費ラグを検査する
1.3.2.2. Java サポートの変更 リンクのコピーリンクがクリップボードにコピーされました!
1.3.2.2.1. Java 17 のサポートの増加 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、以下の方法で Java 17 のサポートが強化されます。
- ネイティブモードと JVM モードの両方で Java 17 サポート
Java 17 は、JVM およびネイティブモードの両方で、Red Hat ビルドの Quarkus 2.13 でサポートされるようになりました。Quarkus で Java 17 を使用して、実稼働環境のネイティブ実行可能ファイルを構築できます。今回の更新以前は、Java 17 を使用したネイティブ実行可能ファイルのビルドは、Red Hat のテクノロジープレビューとしてのみサポートされていました。
- ネイティブ実行可能ファイルは、Java 17 を使用してビルドされます。
Mandrel でネイティブ実行可能ファイルをビルドする場合は、Java 17 が使用されます。Quarkus は、アプリケーションが Java 11 で作成されたかどうかに関係なく、ネイティブ実行可能ファイルを生成する際にデフォルトで Java 17 ビルダーイメージに設定されます。
JVM モードで使用される場合、Red Hat は Quarkus で Java 11 を引き続きサポートします。
-
Quarkus
code.quarkus.redhat.comのデフォルトは Java 17 です
Red Hat ビルドの Quarkus 2.13 では、code.quarkus.redhat.com プロジェクトジェネレーターはデフォルトで Java 17 に設定されます。Java 11 で Quarkus プロジェクトを作成するには、クイックスタート設定オプションの CONFIGURE YOUR APPLICATION セクションで Java バージョンを設定します。
サポートされる Java および OpenJDK バージョンの詳細は、Red Hat カスタマーポータルにログインし、ナレッジベースソリューション Supported Configurations を参照してください。
1.3.2.3. Eclipse Vert.x および Netty がアップグレードされている リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、Eclipse Vert.x および Netty が以下のバージョンにアップグレードされます。
1.3.2.4. 新しいプラグイン quarkus-extension-maven-plugin は、quarkus-bootstrap-maven-pluginを置き換えます。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、新しいプラグイン quarkus-extension-maven-plugin が導入され、Quarkus 2.13 で非推奨となった quarkus-bootstrap-maven-plugin の代わりに使用されます。
プロジェクトの pom.xml ファイルを更新し、artifactId プロパティーの値を quarkus-bootstrap-maven-plugin から quarkus-extension-maven-plugin に変更して、Quarkus エクステンションプロジェクトを更新し、新しいプラグインを使用します。
1.3.2.5. RESTEasy Reactive JAXB コンテキストをカスタマイズできるようになりました リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、RESTEasy Reactive 用の quarkus-resteasy-reactive-jaxb エクステンションを使用すると、 JaxbContextCustomizer CDI bean を介して Java Architecture for XML Binding (JAXB)コンテキストをカスタマイズできます。
詳細は、Quarkus "Writing REST Services With RESTEasy Reactive" の Customize the JAXB configuration セクションを参照してください。
1.3.2.6. SmallRye Config シークレットキーのサポート リンクのコピーリンクがクリップボードにコピーされました!
設定プロパティーにパスワードやその他の種類のシークレットが含まれている場合、SmallRye Config は、このような値をログに出力するなどして、このような値の偶発的な露出を防ぐためにそれらを保護できます。
今回の更新により、キーをシークレットとしてマークできるようになりました。次に、アプリケーションコードは、SecretKeys.doUnlocked 呼び出しで読み取りをラップした後、protected プロパティーの値のみを読み取ることができます。
Red Hat ビルドの Quarkus では、この機能に暗号化やハッシュ関数を追加するなど、今後のリリースでのシークレットのサポートを拡張する計画があります。
1.3.2.7. Quiltflower デコンパイラーのサポート リンクのコピーリンクがクリップボードにコピーされました!
Quarkus エクステンションを開発すると、Quarkus は複数のクラスを生成し、多くの場合はビルドフェーズで既存のクラスを変換する。
Red Hat ビルドの Quarkus 2.13 では、Quiltflower デコンパイラーを使用して、これらのクラスのソースコードをデバッグおよび検査できます。これにより、コードをよりよく理解し、その品質、速度、および使いやすさを向上させることができます。
今回の更新以前は、Fernflower デコンパイラーが使用されていました。ただし、Quiltflower に切り替えると、Quarkus 2.13 では Fernflower デコンパイラーが非推奨になりました。
Quiltflower decompiler をダウンロードして実行するには、application.properties ファイルを更新して quarkus.package.quiltflower.enabled プロパティーを true に設定します。
Quiltflower decompiler の詳細は、Quarkus Writing your own extension ガイドを参照してください。
1.3.3. Data リンクのコピーリンクがクリップボードにコピーされました!
1.3.3.1. ValidatorFactoryCustomizer Bean の登録による Hibernate Validator の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、ValidatorFactoryCustomizer Bean を登録することで ValidatorFactory を完全に設定できます。
この更新の前は、置換 Bean を宣言することで ValidatorFactory のみを設定していました。そのため、組み込み制約バリデーターの上書きなど、一部の高度な設定はできませんでした。
詳細は、Quarkus "Validation with Hibernate Validator" の Configuring the ValidatorFactory セクションを参照してください。
1.3.3.2. Elasticsearch の Dev Services リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、Elasticsearch 用の Dev Services が導入されるため、Quarkus アプリケーションの開発およびテスト中にローカルの Elasticsearch サービスをセットアップ/設定する必要がなくなります。
Elasticsearch サービスを使用する Quarkus エクステンションを使用している場合、開発およびテストモードで Quarkus アプリケーションを実行すると、Quarkus は Elasticsearch コンテナーを自動的にプロビジョニングし、開始します。アプリケーションは、最初にセットアップおよび設定せずに、Quarkus によって提供される Elasticsearch サービスをすぐに使用できます。
さらに、Elasticsearch Dev Services で Quarkus Hibernate Search 拡張を使用する場合、Elasticsearch スキーマは新しいコンテナーインスタンスごとに初期化され、アプリケーションの再起動時に再初期化されます。
設定プロパティーや制限など、Elasticsearch の Dev Services の詳細は、以下の Quarkus コミュニティーリソース を参照してください。
1.3.3.3. Infinispan の Dev Services リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 には、Infinispan の Dev Services にさらに機能拡張が追加されました。
application.properties 設定ファイルで属性を設定すると、Infinispan クライアントの最初のアクセスでキャッシュを設定できるようになりました。Infinispan クライアントでのニアキャッシュの実装も強化され、新しい設定プロパティーが導入されました。詳細は、Quarkus "Infinispan Client" の Creating caches from the client セクションを参照してください。
1.3.3.4. CacheKeyGenerator インターフェイスを実装してキャッシュキーを生成する リンクのコピーリンクがクリップボードにコピーされました!
この更新の前は、キャッシュキーを生成するときにのみメソッド引数にアクセスできていました。
今回の更新により、@CacheResult または @CacheInvalidate アノテーションが付けられたメソッドの名前と引数にアクセスできるようになりました。Contexts and Dependency Injection (CDI)を使用して、外部データをジェネレーター実装に挿入することもできます。
これを行うには、io.quarkus.cache.CacheKeyGenerator インターフェイスを実装し、@CacheResult または @CacheInvalidate アノテーションの keyGenerator フィールドでその実装を宣言します。
また、この更新により、ジェネレーターの実装で Method オブジェクトが自動的に利用できるようになりました。このオブジェクトは、@CacheResult または @CacheInvalidate アノテーションが付けられたメソッドに関する情報とアクセスを提供します。Method オブジェクトを使用する主な理由は、メソッド名を取得し、キャッシュキーの要素として使用することです。
ほとんどの Method オブジェクトメソッドはコストが高いため、注意して使用してください。ただし、その method #getName メソッドは、有益で非安価です。
詳細は、Quarkus の Application Data Caching ガイドの Generating a cache key with CacheKeyGenerator セクションを参照してください。
1.3.3.5. Hibernate Search が @SearchExtension アノテーションを使用したカスタマイズが容易になる リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では @SearchExtension アノテーションが導入され、Hibernate Search のカスタマイズが容易になりました。
この更新前は、設定プロパティーの代わりにアノテーションを使用して Hibernate Search のカスタムレーザー Bean を定義する場合は、application. properties ファイルで Bean を参照する必要があり ました。今回の更新により、@SearchExtension アノテーションを追加するだけで、1 つの手順でカスタムレジュラー Bean を定義できるようになりました。たとえば、Hibernate Search の分析コンフィグレーサー Bean を実装するには、以下の手順を完了する必要があります。
AnalysisConfigurerの実装にアノテーションが付けられている。Copy to Clipboard Copied! Toggle word wrap Toggle overflow application.propertiesファイルからコンフィグレーター Bean を参照している必要があります。quarkus.hibernate-search-orm.elasticsearch.analysis.configurer=bean:myAnalysisConfigurer
quarkus.hibernate-search-orm.elasticsearch.analysis.configurer=bean:myAnalysisConfigurerCopy to Clipboard Copied! Toggle word wrap Toggle overflow
今回の更新により、@SearchExtension を使用して application.properties ファイルでカスタム Bean を参照しなくなりました。実装にアノテーションを付けるだけです。
分析 Bean の例で提供される構文は、以下のすべての Hibernate Search Bean 参照設定プロパティーで機能します。
-
quarkus.hibernate-search-orm.background-failure-handler -
quarkus.hibernate-search-orm.automatic-indexing.synchronization.strategy -
quarkus.hibernate-search-orm.elasticsearch.layout.strategy -
quarkus.hibernate-search-orm.elasticsearch.analysis.configurer
詳細は、Quarkus コミュニティーの Hibernate Search ガイド を参照してください。
1.3.3.6. Quarkus Transaction API リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 は QuarkusTransaction API をサポートするようになりました。これを使用して、アプリケーションでトランザクションをプログラムで管理できます。JTA UserTransaction API を使用する代わりに、QuarkusTransaction API を使用してトランザクションをより詳細に制御し、失敗時にトランザクションのロールバックが正しく処理されるようにできるようになりました。
QuarkusTransaction API の詳細は、Quarkus でのトランザクションの使用の プログラムに よるアプローチ を参照してください。
1.3.3.7. 安定した機能としてリリースされた Spring Data REST 拡張 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、Spring Data REST エクステンションが安定した機能としてリリースされます。このリリースより前は、プレビュー機能でした。
Spring Data 互換レイヤーを使用すると、Spring Data REST エクステンションを使用して、作成、取得、更新、および削除(CRUD)操作のための REST レイヤーの作成を簡素化できます。
詳細は、Quarkus Spring Data REST ガイド を参照してください。
1.3.4. ロギング リンクのコピーリンクがクリップボードにコピーされました!
1.3.4.1. quarkus.log.file.rotation.max-file-size の仕組みへの変更 リンクのコピーリンクがクリップボードにコピーされました!
今回の更新以前は、quarkus.log.file.rotation.max-file-size パラメーターが設定されていない場合:
-
quarkus.log.file.rotation.file-suffixパラメーターが設定されている場合、Quarkus は定期的なログファイルのローテーションを実行しました。ただし、LOGMGR-303 により、ファイルサイズの制限は、10 MB に記載されている代わりに約 650 KB でした。 -
quarkus.log.file.rotation.file-suffixパラメーターが設定されていない場合、Quarkus はファイルサイズログファイルのローテーションを実行せず、ファイルサイズが時間の経過とともに継続的に増加しました。
今回の更新により、quarkus.log.file.rotation.max-file-size パラメーターが設定されていない場合:
-
quarkus.log.file.rotation.file-suffixパラメーターが設定されている場合、Quarkus は定期的なログファイルローテーションを実行し、ファイルサイズ制限は 10 MB です。 -
quarkus.log.file.rotation.file-suffixパラメーターが設定されていない場合、Quarkus はファイルサイズログファイルのローテーションを実行し、ファイルサイズ制限は 10 MB です。
|
|
| |
|
| 変更はありません:
| 更新の前:
今回の更新により、以下が可能になります。
|
|
| 変更はありません:
| 更新の前:
今回の更新により、以下が可能になります。
|
詳細は、Quarkus 「 ロギングの設定」ガイドの ファイルのロギング セクションを参照してください。
1.3.5. メッセージング リンクのコピーリンクがクリップボードにコピーされました!
1.3.5.1. SmallRye Reactive Messaging がバージョン 3.16 に更新されました。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、SmallRye Reactive Messaging フレームワークがバージョン 3.16 に更新されました。
以下の機能が導入されました。
- 独自のコンテキストで実行されるメッセージ処理。これにより、パイプライン全体でデータを暗黙的に伝播できます。
- Apache Kafka のチェックポイント API の初期バージョン。
- ユーザーが Apache Kafka のカスタム障害の書き込みや、Apache Kafka のハンドラーをコミットすることを許可する機能。
1.3.5.2. Qpid JMS 拡張機能のサポート リンクのコピーリンクがクリップボードにコピーされました!
Quarkus は、Quarkus アプリケーションの一部として Qpid JMS エクステンションを追加し、ネイティブ実行可能ファイルビルドを使用するものを含む、Apache Qpid からの AMQP JMS クライアントの使用を容易にします。
AMQP 1.0 で JMS API を使用するためのメッセージブローカー:
- ActiveMQ Artemis
- ActiveMQ 5
- Microsoft Azure Service Bus
- Qpid Broker-J
- Qpid Dispatch ルーターなど
拡張機能の使用を開始するには、以下を行います。
以下のように、
org.amqphub.quarkus:quarkus-qpid-jmsモジュールをプロジェクトの依存関係として追加します。<dependency> <groupId>org.amqphub.quarkus</groupId> <artifactId>quarkus-qpid-jms</artifactId> </dependency><dependency> <groupId>org.amqphub.quarkus</groupId> <artifactId>quarkus-qpid-jms</artifactId> </dependency>Copy to Clipboard Copied! Toggle word wrap Toggle overflow @Injectアノテーションを使用して、ConnectionFactoryJava Messaging Service (JMS)ブローカーを注入します。@Inject ConnectionFactory connectionFactory;
@Inject ConnectionFactory connectionFactory;Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 接続ファクトリー設定 を管理します。
このエクステンションのアプリケーション使用例については、quarkus-qpid-jms-quickstart リポジトリー を参照してください。
1.3.6. セキュリティー リンクのコピーリンクがクリップボードにコピーされました!
1.3.6.1. OpenID Connect の事前設定されたプロバイダー リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、quarkus.oidc.provider 設定プロパティーを使用して、Apple、Facebook、GitHub、Google、Microsoft、Spotify、Twitter などのよく知られている OpenID Connect および OAuth2 プロバイダーを参照することができるようになりました。
このプロパティーを使用する場合は、通常、アカウント固有のクライアント ID、クライアントシークレット、およびその他のプロパティーを設定して設定を完了します。
この新機能により、OIDC Authorization Code Flow メカニズムを使用して、Quarkus エンドポイントをよりシンプルで簡単に保護できます。
詳細は、Quarkus よく知られている OpenID Connect プロバイダーの設定 ガイドを参照してください。
1.3.6.2. OIDC バックチャネルログアウトのサポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、OpenID Connect (OIDC)エクステンションのバックチャネルログアウト機能のサポートが導入されました。
今回の更新により、Keycloak などのこの機能をサポートする OIDC プロバイダーは、参加するすべての Quarkus アプリケーションからユーザーのグローバルログアウトを行うことができます。
バックチャネルログアウトのサポートを設定するには、application.properties ファイルに移動して、quarkus.oidc.logout.backchannel.path プロパティーを更新します。
詳細は、以下を参照してください。
- Quarkus OpenID Connect (OIDC)認可コードフローメカニズムガイドの バックチャネルログアウト セクション
- OpenID connect back-channel logout documentation
1.3.6.3. OIDC での Proof Key for Code Exchange (PKCE)のサポート リンクのコピーリンクがクリップボードにコピーされました!
この更新により、OpenID Connect (OIDC)プロトコルの Quarkus 実装に、Proof Key for Code Exchange (PKCE)のサポートが追加されました。
PKCE は、OIDC を使用する Quarkus Web アプリケーションの認証コードインターセプションのリスクを最小限に抑えます。
詳細は、Quarkus "OpenID Connect (OIDC) Authorization Code Flow Mechanism" ガイドの PKCE 関連のセクション を参照してください。
1.3.7. Web リンクのコピーリンクがクリップボードにコピーされました!
1.3.7.1. RESTEasy Reactive、リアクティブルート、および静的リソースの HTTP 圧縮の詳細な制御を追加しました。 リンクのコピーリンクがクリップボードにコピーされました!
特定のメディアタイプの HTTP 圧縮を有効にするには、quarkus.http.compress-media-types 設定プロパティーを使用し、io.quarkus.vertx.http.Compressed アノテーションを使用して、個別のリソースメソッドに対してます。必要な圧縮レベルを設定することもできます。
詳細は、Quarkus "Writing REST services with RESTEasy reactive" の HTTP Compression セクションを参照してください。
1.3.7.2. パスごとの追加の HTTP ヘッダー リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、特定のリソースパスによって受信される要求に応答して、カスタマイズされた HTTP ヘッダー値を返すように Web アプリケーションを設定できます。
詳細は、Quarkus "HTTP Reference" の Additional HTTP Headers per path セクションを参照してください。
1.3.7.3. SmallRye GraphQL 非ブロッキングサポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、SmallRye GraphQL API はリアクティブおよび非ブロッキング実行モデルを提供し、Mutiny リアクティブプログラミングモデルと統合します。
1.4. サポートおよび互換性 リンクのコピーリンクがクリップボードにコピーされました!
以下のように、Red Hat ビルドの Quarkus 2.13 と互換性のあるサポートされる設定およびアーティファクト、および Red Hat カスタマーポータル で高レベルのサポートライフサイクルポリシーに関する詳細情報を確認できます。
- サポートされる設定、OpenJDK バージョン、およびテスト済みの統合の一覧は、Red Hat build of Quarkus Supported Configurations を参照してください。
- Red Hat ビルドの Quarkus でサポートされている Maven アーティファクト、エクステンション、および BOM の一覧は、Red Hat build of Quarkus Component Details を参照してください。
- すべての Red Hat 製品の一般提供、フルサポート、およびメンテナンスサポートの日付については、Red Hat Application Services 製品のアップデートとサポートポリシー を参照してください。
1.4.1. 製品の更新とサポートライフサイクルポリシー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat build of Quarkus では、機能リリースは、新しい機能やサポートを導入するメジャーリリースまたはマイナーリリースのいずれかになります。Red Hat ビルドの Quarkus リリースバージョン番号は、Quarkus コミュニティープロジェクト のリリースバージョンに直接調整されます。Red Hat ビルドの Quarkus 機能リリースのバージョン番号は、ベースとなるコミュニティーバージョンと一致します。
Red Hat は、コミュニティーがリリースするすべてのバージョンに対して、Quarkus の製品版をリリースするわけではありません。Red Hat build of Quarkus 機能リリースの頻度は、約 6 カ月ごとです。
Red Hat build of Quarkus は、後続のバージョンのリリースまで、機能リリースの完全なサポートを提供します。機能リリースが新しいバージョンに置き換えられた場合、Red Hat は、以下のサポートライフサイクルチャート [図 1] に示すように、そのリリースに対してさらに 6 カ月間のメンテナンスサポートを提供し続けます。
図 1 Red Hat ビルドの Quarkus の機能リリースの頻度およびサポートライフサイクル
リリースのフルサポートフェーズとメンテナンスサポートフェーズの期間中、Red Hat はバグや Common Vulnerabilities and Exposures (CVE) を修正するための 'service-pack (SP)' 更新と 'マイクロ' リリースも提供します。
Red Hat build of Quarkus の後続の機能リリースの新機能により、基盤となるテクノロジーまたはプラットフォームの依存関係に機能拡張、革新、および変更が導入される可能性があります。後続の機能リリースで新機能または変更された内容の詳細は、新機能、機能拡張、および技術変更 を参照してください。
Red Hat build of Quarkus のほとんどの機能は、最新リリースにアップグレードした後も期待どおりに動作し続けますが、特定のシナリオでは、既存のアプリケーションを変更したり、環境や依存関係に追加の設定を実行したりする必要がある場合があります。したがって、Red Hat ビルドの Quarkus を最新リリースにアップグレードする前に、リリースノートの 以前のバージョンとの互換性や、非推奨のコンポーネントおよび機能 セクションに影響する変更 を常に確認してください。
1.4.2. テスト済みおよび検証済みの環境 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 は、以下に示すサポート対象のインストールコンテナーイメージを使用して、以下の Red Hat OpenShift Container Platform および Red Hat Enterprise Linux 8 のバージョンで利用できます。
各 CPU アーキテクチャーの テスト済み および サポートされる 列に注目してください。デプロイメント環境がテストされていない次の表のバージョンのサポートステータスを取得するには、Red Hat ナレッジベースの Support of Red Hat Middleware products and components on Red Hat OpenShift Container Platform を参照してください。
| プラットフォーム | アーキテクチャー | コンテナーイメージ/JVM | テスト済み | サポート対象 |
| OpenShift Container Platform 4.10 | AMD64 および Intel 64 (x86_64) | Red Hat OpenJDK 11 および Red Hat OpenJDK 17 | はい | はい - サポート記事を参照してください |
| OpenShift Container Platform 4.10 | IBM Power (ppc64le) および IBM Z (s390x) | Red Hat OpenJDK 11 | いいえ | はい - サポート記事を参照してください |
| OpenShift Container Platform 4.12 | IBM Power (ppc64le) および IBM Z (s390x) | Red Hat OpenJDK 11 | IBM Power のみ | はい |
| OpenShift Container Platform 4.13 | AMD64 および Intel 64 (x86_64) | Red Hat OpenJDK 11 および Red Hat OpenJDK 17 | はい | はい |
| OpenShift Container Platform 4.13 | IBM Power (ppc64le) および IBM Z (s390x) | Red Hat OpenJDK 11、Eclipse Temurin 11 | IBM Z のみ | はい |
| Red Hat Enterprise Linux 8 | AMD64 および Intel 64 (x86_64) | OpenJDK 11.x および OpenJDK 17.x、Eclipse Temurin 11.x、および 17.x | はい | はい |
- Red Hat ビルドの Quarkus 2.13 は、AMD64 および Intel 64 (x86_64)アーキテクチャーで実行している Red Hat OpenShift Dedicated でサポートされます。Red Hat は、OpenShift Dedicated の最新バージョンでのみ Quarkus をテストします。前述の表の OpenShift Container Platform と同じ "Container image/JVM" および "Supported" 値が OpenShift Dedicated に適用されます。
- サポートされる設定の一覧は、Red Hat カスタマーポータル にログインし、ナレッジベースのソリューション Red Hat build of Quarkus Supported Configurations を参照してください。
1.4.3. 開発サポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、以下の Red Hat build of Quarkus の機能、プラグイン、エクステンション、および依存関係の 開発サポート を提供します。
機能
- 継続的テスト
- Dev Services
- Dev UI
- ローカル開発モード
- リモート開発モード
プラグイン
- Maven Protocol Buffers プラグイン
1.4.3.1. 開発ツール リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、Quarkus CLI および Maven および Gradle プラグインを含む Quarkus 開発ツールを使用するための開発 サポート を提供し、Red Hat ビルドの Quarkus アプリケーションの開発、テスト、およびデプロイを行います。
Red Hat は、実稼働環境での Quarkus 開発ツールの使用をサポートしていません。詳細は、Red Hat ナレッジベースの記事 Development Support Scope of Coverage を参照してください。
1.5. 非推奨のコンポーネントおよび機能 リンクのコピーリンクがクリップボードにコピーされました!
本セクションに記載するコンポーネントおよび機能は、Red Hat ビルドの Quarkus 2.13 で非推奨となりました。これらはこのリリースに含まれており、サポートされています。ただし、これらのコンポーネントと機能は拡張されず、今後削除される可能性があります。
本リリースで非推奨となったコンポーネントおよび機能の一覧は、Red Hat カスタマーポータル にログインし、Red Hat build of Quarkus Component Details ページを表示します。
1.5.1. quarkus-bootstrap-maven-pluginの非推奨 リンクのコピーリンクがクリップボードにコピーされました!
プラグイン quarkus-bootstrap-maven-plugin は、Quarkus 2.13 で導入された quarkus-extension-maven-plugin が優先されるため、Red Hat ビルドの Quarkus 2.13 で非推奨になりました。
1.5.2. quarkus-reactive-routes エクステンションの非推奨化 リンクのコピーリンクがクリップボードにコピーされました!
quarkus-reactive-routes エクステンションは、Eclipse Vert.x の Reactive Routes エクステンションを優先して、Red Hat ビルドの Quarkus 2.13 で非推奨になりました。Red Hat は、Quarkus 2.13 では quarkus-reactive-routes エクステンションを引き続きサポートしますが、ユーザーは RESTEasy Reactive または Vert.x ルーターを直接使用することが推奨されます。
詳細は、以下を参照してください。
- RESTEasy Reactive を使用した REST サービスの書き込み ガイド
- Quarkus の Reactive ルートの 使用ガイドの Vert.x Web ルーター の使用セクション
1.5.3. quarkus-resteasy-mutiny エクステンションの非推奨 リンクのコピーリンクがクリップボードにコピーされました!
quarkus-resteasy-mutiny エクステンションは、Red Hat ビルドの Quarkus 2.13 で非推奨になりました。代わりに、quarkus-resteasy-reactive エクステンションの使用を開始できます。
1.5.4. SmallRye メトリクスの非推奨 リンクのコピーリンクがクリップボードにコピーされました!
高度なユースケース 中 に SmallRye Metrics の問題を解決するために Quarkus で採用され、Quarkus アプリケーションを監視する侵入的な方法が提供されません。
1.5.5. SmallRye OpenTracing の非推奨 リンクのコピーリンクがクリップボードにコピーされました!
SmallRye OpenTracing は非推奨となり、Quarkus の今後のバージョンでこのテクノロジーが削除されることが予想されます。Quarkus アプリケーションでのトレースと Telemetry に推奨されるテクノロジーは、OpenTelemetry になりました。
1.6. テクノロジープレビュー リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Red Hat ビルドの Quarkus 2.13 でテクノロジープレビューとして利用可能なようになった機能およびエクステンションを記載しています。
テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat テクノロジープレビュー機能の詳細は、テクノロジプレビュー機能のサポート範囲 を参照してください。
1.6.1. Hibernate Reactive のサポート リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、Hibernate Reactive は引き続きテクノロジープレビュー機能として提供されます。
Hibernate Reactive は、Hibernate Object Relational Mapper (ORM)のリアクティブ API です。Hibernate Reactive は、ノンブロッキングデータベースドライバーをサポートします。つまり、アプリケーションはリアクティブ方法でリレーショナルデータベースと対話できます。
Red Hat ビルドの Quarkus でテクノロジープレビューとして利用可能なすべてのエクステンションおよび依存関係の一覧は、Red Hat カスタマーポータル にログインし、ナレッジベースソリューション Red Hat build of Quarkus Component Details を参照してください。
1.7. 以前のバージョンとの互換性に影響を与える変更 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、以前のバージョンの製品バージョンでビルドされたアプリケーションの互換性に影響を与える Red Hat ビルドの Quarkus 2.13 の変更について説明します。
このリリースで導入された重大な変更を確認し、既存のアプリケーションを Red Hat ビルドの Quarkus 2.13 にアップグレードするときに、アップグレード後に引き続き機能することを確認するために、必要なアクションを実行します。
1.7.1. assertj が Red Hat ビルドの Quarkus BOM に含まれなくなりました。 リンクのコピーリンクがクリップボードにコピーされました!
AssertJ バイナリーとの互換性の問題を回避するために、バージョン 2.13 から、AssertJ ライブラリーが Red Hat ビルドの Quarkus BOM アーティファクトから削除されました。以前のリリースでは、古いバージョンの AssertJ でコンパイルされたテストを実行すると、Quarkus BOM に含まれるバージョンで問題が発生していました。
アプリケーションで AssertJ ライブラリーを使用するには、以下の例のように POM で AssertJ のバージョンを手動で定義します。
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.22.0</version>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.22.0</version>
</dependency>
1.7.2. データベース Dev Services は、同じデータベース名、ユーザー名、およびパスワードを使用します。 リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、データベース名とログイン認証情報をほとんどのデータベースで同じにします。
PostgreSQL、MariaDB、MySQL、IBM Db2、および H2 データベースは、以下の値を使用します。
-
データベース名:
quarkus -
Username: デフォルトのデータソースまたはデータソースの名前用の
quarkus -
パスワード:
quarkus
Dev Service for Microsoft SQL Server はこれらの変更をサポートしていないため、次の値を使用します。
- データベース名:なし
-
Username:
SA -
Password:
Quarkus123
次の設定パラメーターまたは環境変数を使用して、それをサポートする Dev Services のこれらの値をオーバーライドできます。
| 設定パラメーター | 環境変数 | |
| データベース名 |
|
|
| ユーザー名 |
|
|
| Password |
|
|
詳細は、「Dev Services for Databases」ガイドの Connect To Database Run as a Dev Service セクションを参照してください。
1.7.3. H2 データベースをバージョン 2.1 にアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、インメモリー H2 データベースがバージョン 1.4 から 2.1 にアップグレードされました。
このバージョンのアップグレードにより、H2 は user、value、および timestamp などの新しい予約済みキーワードを追加します。既存の列名でこれらのキーワードをすでに使用する場合は、列名を user_、timestamp_、または value_ に変更するなどして、データベースモデルを調整する必要があります。
または、テストのためにコンテナーアプローチに切り替え、H2 データベースの代わりに実稼働環境で使用しているのと同じデータベースを使用する必要がある場合もあります。
H2 に関する詳細は、H2 データベース のドキュメントを参照してください。
1.7.4. Hibernate ORM MariaDB 方言 10.6 に更新されました。 リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、Hibernate ORM はデフォルトで方言 10.6 に MariaDB イメージを使用するようになりました。
MariaDB 方言 10.3、10.4、または 10.5 を使用している場合は、application.properties ファイルの quarkus.hibernate-orm.dialect プロパティーを quarkus.hibernate-orm.dialect=org.hibernate.dialect.MariaDB103Dialect に設定してデフォルトを上書きします。
詳細は、Quarkus の Hibernate ORM および Java Persistence API (JPA)の使用 ガイドの Dialect 関連の設定 セクションを参照してください。また、Hibernate ORM の集約され た JavaDocs ドキュメントの パッケージ org.hibernate.dialect パッケージの概要も参照してください。
1.7.5. Hibernate Search quarkus.hibernate-search-orm.* 設定プロパティーの変更 リンクのコピーリンクがクリップボードにコピーされました!
この更新により、quarkus.hibernate-search-orm.enabled 設定プロパティーの動作が変更されます。今回の更新以前は、実行時に Hibernate Search が有効化されていました。今回の更新により、ビルド時に Hibernate Search が有効になります。
今回の更新では、実行時に Hibernate Search を有効にする quarkus.hibernate-search-orm.active 設定プロパティーも追加されています。
./src/main/resources/application.properties などの quarkus.hibernate-search-orm.enabled プロパティーが含まれる設定ファイルを確認し、それらを更新してこれらの変更を反映させます。
同様に、この更新により、QUARKUS_HIBERNATE_SEARCH_ORM_ENABLED 環境変数の動作が変更され、QUARKUS_HIBERNATE_SEARCH_ORM_ACTIVE 環境変数が追加されます。必要に応じて、QUARKUS_HIBERNATE_SEARCH_ORM_ENABLED 環境変数への参照を更新して、これらの変更を反映します。
詳細は、Quarkus "Hibernate Search" の Main Configuration セクションを参照してください。
1.7.6. HTTP 圧縮設定がビルド時に修正されるようになりました リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、HTTP 圧縮設定の動作が変更されました。今回の更新により、HTTP 圧縮設定はビルド時に設定として配信され、起動時にこれらの設定を上書きすることはできなくなりました。ビルド時に HTTP 圧縮設定を指定すると、要件に応じてアプリケーション設定をさらに最適化できます。
すべての HTTP 応答がデフォルトで圧縮される訳ではありません。quarkus.http.enable-compression 設定プロパティーを true に設定すると、HTTP 圧縮サポートを有効にできます。クライアントが HTTP 圧縮に対応していない場合、応答本文は圧縮されません。
HTTP 圧縮更新の詳細については、新機能、機能拡張、および技術変更 セクションを参照してください。以下の HTTP 更新では、HTTP 応答は設定プロパティーの設定とメディアタイプに基づいて圧縮 されます。
関連情報
- Quarkus HTTP リファレンス ガイド
- Quarkus が RESTEasy リアクティブを使用した REST サービスの作成 ガイド
- Quarkus Using reactive routes guide
1.7.7. quarkus.http.enable-compression=trueの場合、Red Hat ビルドの Quarkus はすべての HTTP 応答を圧縮しません リンクのコピーリンクがクリップボードにコピーされました!
RESTEasy Reactive、リアクティブルート、および静的リソースの場合、HTTP レスポンスは、Content-Type ヘッダーが設定され、値が quarkus.http.compress-media-types プロパティーを使用して設定される圧縮メディアタイプである場合にのみ圧縮されます。
デフォルトでは、次のメディアタイプが圧縮されます。
-
text/html -
text/plain -
text/xml -
text/css -
text/javascript -
application/javascript
1.7.8. @InjectMock アノテーションに追加の修飾子が必要になる場合があります リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、quarkus-junit5-mockito エクステンションで利用可能な @InjectMock アノテーションは、javax.enterprise.inject.spi.BeanManager#getBeans () メソッドを内部で使用して、@InjectMock インジェクションポイントの対象となる Bean のセットを取得します。
今回の更新以前は、BeanManager#getBeans () メソッドの問題により、修飾子を指定しないと、必要な型に一致する Bean はインジェクションの対象でした。その結果、@Default 以外の修飾子で Bean のモックをインジェクトし、この修飾子を指定しなかったテストが成功しました。
今回の更新により、モックが @Default 以外の修飾子を宣言する Bean が宣言される場合は、修飾子を指定する必要があります。その結果、@Default 以外の修飾子を持つ Bean のモックを注入すると、テストに失敗しますが、この修飾子の値は指定しません。
1.7.9. quarkus.datasource.devservices が quarkus.datasource.devservices.enabledに置き換えられました。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.7 で非推奨となった quarkus.datasource.devservices 設定プロパティーが削除されました。
リレーショナルデータベースの Dev Services を無効にするには、代わりに quarkus.datasource.devservices.enabled プロパティーを使用します。
詳細は、Quarkus "Dev Services for Databases" の Enabling / Disabling Dev Services for Database セクションを参照してください。
非推奨の quarkus.http.allow-forwarded および quarkus.http.proxy-address-forwarding 設定プロパティーが削除されました。
リバースプロキシーの背後で Quarkus を実行するには、代わりに quarkus.http.proxy.allow-forwarded および quarkus.http.proxy.proxy-address-forwarding プロパティーを使用します。
quarkus.http.proxy 設定プロパティーは、削除されたプロキシー関連のプロパティーよりもはるかに多くの機能を提供します。
詳細は、Quarkus "HTTP Reference" の Running behind a reverse proxy セクションを参照してください。
1.7.10.1. quarkus.http.root-path @TestHTTPResourceの先頭に付けられた リンクのコピーリンクがクリップボードにコピーされました!
この更新により、quarkus.http.root-path 設定プロパティーの値が @TestHTTPResource アノテーションの URI 値に追加されます。
@TestHTTPResource アノテーションを使用して URI をテストに注入すると、quarkus.http.root-path 設定プロパティーの値が URI よりも優先されます。
たとえば、Hello World アプリケーションで @ApplicationPath ("/hello") と @TestHTTPResource ("index.html") を定義し、quarkus.http.root-path=/root を設定すると、アプリケーションの名前を http://localhost:8080/root/hello と設定します。
詳細は以下を参照してください。
- アプリケーションのテスト ガイドの URI の注入 セクション。
- HTTP リファレンス の コンテキストパスの設定 セクション
1.7.11. Red Hat は Mandrel 22.3 用の Java 11 ベースのイメージを提供しません。 リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、Red Hat は Mandrel 22.3 用の Java 11 ベースの Red Hat ビルドの Quarkus ネイティブビルダーイメージを提供しません。
アプリケーションをネイティブ実行可能ファイルにコンパイルするには、以前の Java 11 ベースのイメージを、Java 17 ベースの Red Hat ビルドの Quarkus ネイティブビルダーイメージ に置き換えます。
Java 17 ベースの Red Hat ビルドの Quarkus ネイティブビルダーイメージは、ほとんどの Java 11 アプリケーションと互換性があり、ほとんどの実稼働環境用のネイティブ実行可能ファイルビルドで機能します。ただし、まれに、ビルドが失敗する場合があります。このような場合の 1 つは、ネイティブ実行可能ファイルのビルドが増分またはマルチステージのビルドプロセスの一部である場合です。
Red Hat は、Quarkus コミュニティーの Java 11 ベースの Mandrel 22.3 ベースイメージのテクニカルサポートを提供しません。
1.7.13. quarkus-undertow-websockets エクステンションの削除 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、コミュニティーバージョンの io.quarkus:quarkus-undertow-websockets エクステンションが削除されました。Red Hat は、Red Hat ビルドの Quarkus 2.7 ライフサイクルの終了時にのみ、バグ修正とサポートを提供します。io.quarkus:quarkus-undertow-websockets エクステンションの代わりに、Eclipse Vert.x の WebSockets プロトコル実装に基づく WebSockets Client (io.quarkus:quarkus-websockets-client)および WebSockets Server (io.quarkus:quarkus-websockets)エクステンションを使用できます。
詳細は、Quarkus Using WebSockets ガイドの Creating the Maven project セクションを参照してください。
1.7.15. RESTEasy Reactive が新しいデフォルトの REST レイヤーです。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus を使用して新しいアプリケーションを作成すると、quarkus-resteasy ではなく、quarkus-resteasy-reactive プロパティーがデフォルトで選択されるようになりました。
RESTEasy Reactive は、従来のブロックワークロードとリアクティブワークロードの両方をサポートします。エンドポイントのメソッドの戻りタイプに応じて、RESTEasy Reactive は適切なパラダイムを選択します。
以下に例を示します。
-
MyEntityを返すと、エンドポイントがブロックされます。 -
Uni<MyEntity> を返すと、エンドポイントをリアクティブにします。
詳細は、Quarkus Writing REST Services with RESTEasy Reactive ガイドを参照してください。
1.7.16. SmallRye GraphQL API エンドポイントがデフォルトで @Singleton Bean として動作するようになる リンクのコピーリンクがクリップボードにコピーされました!
今回の更新以前は、@GraphQLApi エンドポイントに割り当てられたデフォルトのスコープは @Dependent でした。今回の更新により、REST エンドポイントに合わせて、スコープアノテーションを明示的にエンドポイントに追加しない限り、@GraphQLApi は @Singleton Bean として機能します。
1.7.17. SmallRye Stork エクステンション設定プロパティーが Quarkus namespace に移動 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、quarkus. 名前空間で SmallRye Stork エクステンションのプロパティーを設定する必要があります。
この更新の前は、stork.my-service 接頭辞を持つプロパティーを使用して、SmallRye Stork エクステンションを設定していました。今回の更新により、これらのプロパティーの前に quarkus. stork.my-service などのように付ける必要があります。
以下の例は、利用可能な SmallRy Stork 設定プロパティーの一部を使用した SmallRye Stork エクステンションの設定例を示しています。
-
quarkus.stork.my-service.service-discovery.type=consul -
quarkus.stork.my-service.service-discovery.consul-host=localhost -
quarkus.stork.my-service.service-discovery.consul-port=8500 -
quarkus.stork.my-service.load-balancer.type=least-response-time -
quarkus.stork.my-service.load-balancer.use-secure-random=true
SmallRye Stork とその設定プロパティーの詳細は、Quarkus コミュニティー または SmallRye Stork ドキュメントの すべての設定オプション を参照してください。
1.7.18. 一部の OpenTracing ライブラリーコードが SmallRye OpenTracing に移動しました リンクのコピーリンクがクリップボードにコピーされました!
非推奨の OpenTracing 機能に関連する OpenTracing ライブラリーコードは、コードが OpenTracing コミュニティーによって維持されなくなったため、SmallRye OpenTracing リポジトリーに移行されました。このコードの Java パッケージは変更しましたが、コードは変わりません。
ただし、移行されたコードはプライベート API で設定され、これらの API の一部を使用していない場合は、この変更はアプリケーションには影響しません。変更が破損しないようにするには、OpenTracing ライブラリーの上に構築された API を使用します。
この変更は、opentracing-contrib ライブラリーからパブリックでない API を使用するアプリケーションにのみ影響します。org.eclipse.microprofile.opentracing.Traced アノテーションで API を使用するユーザーは影響を受けません。
今後の Quarkus バージョンで、OpenTracing テクノロジーが OpenTelemetry に置き換えることが予想されます。Quarkus アプリケーションでのトレースと Telemetry に推奨されるテクノロジーが OpenTelemetry になりました。
1.7.19. OIDC web-app アプリケーションのパス固有の認証のサポートが追加されました。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、OpenID Connect (OIDC) Web アプリケーション用のパスベースの認証が導入されました。
今回の更新により、Quarkus アプリケーションが OIDC 認可コードメカニズムを含む複数の認証メカニズムを組み合わせる場合は、quarkus.http.auth.permission.<policy-name>.auth-mechanism=code ではなく、application.property ファイルで quarkus.http.auth.permission.<policy-name>.auth-mechanism= code プロパティーを指定する必要があります。
この更新の前は、このような JWT ベアラートークンと OIDC 認可コードフローメカニズムの組み合わせはできませんでした。
たとえば、quarkus-smallrye-jwt エクステンションを使用して、/management エンドポイントへの要求を認証するための JWT bearer-token 認証メカニズムと、/web-app エンドポイントへの要求を認証する OIDC 承認コードフローメカニズムを提供する場合は、次のプロパティーを設定します。
-
quarkus.http.auth.permission.webapp.paths=/web-app -
quarkus.http.auth.permission.webapp.policy=authenticated -
quarkus.http.auth.permission.webapp.auth-mechanism=code -
quarkus.http.auth.permission.management.paths=/management -
quarkus.http.auth.permission.management.policy=authenticated -
quarkus.http.auth.permission.management.auth-mechanism=bearer
1.7.20. OpenTelemetryClientFilter テレメトリーは、REST クライアントに対して強制的に有効にされません リンクのコピーリンクがクリップボードにコピーされました!
今回の更新以前は、その クライアントでプログラム クライアントの Spans を作成できるようにする必要がありました。
javax.ws.rs.client.Client Client ()フィルターを作成する際に、OpenTelemetry Tracing が javax.ws.rs.client.ClientBuilder.newClient ()
Red Hat ビルドの Quarkus 2.13 では、プログラムまたは注入された REST クライアントの作成時に、ユーザーが OpenTelemetryClientFilter を明示的に登録する必要がないソリューションが導入されています。REST Client Reactive が使用する基盤となる Vert.x クライアントは、OpenTelemetry インストルメンテーションを追加し、クライアントの作成を簡素化するようになりました。
1.8. バグ修正 リンクのコピーリンクがクリップボードにコピーされました!
Quarkus 2.13 では安定性が向上し、ユーザーに大きな影響を与えるバグに対する修正が含まれます。
Red Hat ビルドの Quarkus の最新の修正を取得するには、利用可能な最新バージョンである 2.13.9.SP2 を使用していることを確認してください。
1.8.1. セキュリティー修正 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13 では、以下の CVE が解決されています。
Red Hat ビルドの Quarkus 2.13.9.SP2
-
CVE-2024-1597
org.postgresql/postgresql:pgjdbc: PostgreSQL JDBC ドライバーを使用すると、攻撃者はPreferQueryMode=SIMPLEを使用する場合は SQL を挿入できます。 -
CVE-2024-25710
org.apache.commons/commons-compress: 破損した DUMP ファイルの無限ループによって引き起こされたサービス拒否 -
CVE-2024-26308
org.apache.commons/commons-compress:OutOfMemoryErrorunpacking broken Pack200 file
Red Hat ビルドの Quarkus 2.13.9.SP1
-
CVE-2023-5675
io.quarkus.resteasy.reactive/resteasy-reactive:quarkus: "quarkus.security.jaxrs.deny-unannotated-endpoints" または "quarkus.security.jaxrs.default-roles-allowed" プロパティーが使用されている場合の Quarkus RestEasy Reactive および Classic の認証の不具合 -
CVE-2023-6267
io.quarkus/quarkus-resteasy:quarkus: REST リソースがアノテーションとともに使用される場合、セキュリティーチェックの前に JSON ペイロードが処理される
Red Hat ビルドの Quarkus 2.13.9
-
CVE-2023-6393 Quarkus キャッシュランタイムの脆弱性:
@CacheResultの使用におけるコンテキスト切り替えの問題 - CVE-2023-39410 Apache Avro Java SDK: Avro Java SDK で信頼できないデータをデシリアライズする際のメモリー
- CVE-2023-35887 Apache Mina SSHD: SFTP サーバー実装での情報公開
- CVE-2023-43642 Snappy Java: チャンクの長さに上限チェックを実装することで、潜在的なサービス拒否(DoS)の脆弱性を解決
- CVE-2023-31582 Jose4j: 反復回数設定の強化、セキュリティー対策の強化、および関連するリスクの軽減
- CVE-2023-34453 Snappy Java: シャッフルでの整数オーバーフローにより DoS が発生する
- CVE-2023-34454 Snappy Java: 圧縮時の整数オーバーフローが DoS を引き起こす
- CVE-2023-34455 Snappy Java: チェックされていないチャンクの長さが DoS を引き起こす
- CVE-2023-2976 Guava: 非セキュアな一時ディレクトリーの作成
- CVE-2023-34462 Netty: SniHandler 16MB の割り当てにより OOM が発生する
Red Hat ビルドの Quarkus 2.13.8.SP3
-
CVE-2023-44487
HTTP/2: 複数の HTTP/2-enabled Web サーバーが DDoS 攻撃に対して脆弱です(Rapid Reset Attack)。
Red Hat ビルドの Quarkus 2.13.8.SP2
- CVE-2023-4853 Quarkus セキュリティーポリシー Bypass
Red Hat ビルドの Quarkus 2.13.8
-
CVE-2023-26053
gradle: PGP キーの長い ID の使用は安全ではないため、競合攻撃の対象となります
-
CVE-2022-3782
keycloak: 二重 URL エンコーディングによるパストラバーサル -
CVE-2023-0481
io.quarkus-quarkus-parent:quarkus: Insecure permissions on temp files -
CVE-2023-0482
RESTEasy: 安全でない一時ファイルの作成 -
CVE-2023-1584
quarkus-oidc: 認可コードフロー経由で ID とアクセストークンの漏洩 -
CVE-2023-28867
graphql-java: 細工された GraphQL クエリーによりスタック消費が発生します -
CVE-2022-45787
apache-james-mime4j: MIME4J TempFileStorageProvider での一時ファイル情報の漏洩 -
CVE-2022-3171
protobuf-java: パーサーのタイムアウトにより DoS が発生する -
CVE-2022-4116
quarkus_dev_ui: Dev UI Config Editor は、RCE につながるローカルホスト攻撃によるドライブによる攻撃に対して脆弱です。 -
CVE-2022-31197
postgresql:ResultSet.refreshRow ()の SQL Injection と悪意のある列名
-
CVE-2022-37734
graphql-java: 悪意のあるクエリーによる DoS -
CVE-2022-42003
jackson-databind: UNWRAP_SINGLE_VALUE_ARRAYS に関する深いラッパー配列のネスト -
CVE-2022-42004
jackson-databind: 深くネストされた配列の使用 -
CVE-2022-42889
commons-text,apache-commons-text: 変数の補間 RCE -
CVE-2022-41946
jdbc-postgresql、postgresql-jdbc:PreparedStatement.setText (int,が 2k より大きい場合、一時ファイルを作成しますInputStream) -
CVE-2023-0044
quarkus-vertx-http: クロスサイト攻撃が開始され、情報の漏えいにつながる可能性があります。 -
CVE-2022-41881
codec-haproxy: HAProxyMessageDecoder Stack Exhaustion DoS -
CVE-2022-45047
sshd-common、mina-sshd: Java の安全でない逆シリアル化の脆弱性
1.8.2. その他の機能拡張とバグ修正 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13.8
- QUARKUS-2214 Ban org.javassist:javassist
- QUARKUS-2221 プラットフォームジェネレーターは、1 つの参加者が必要とし、別の参加者が管理する制約を自動追加する必要があります。
- QUARKUS-2230Introduc e OpenShift ベースの CI がアップストリームで実行される
- QUARKUS-2238 code.quarkus.io および code.quarkus.redhat.com の Chrome タブでのクラッシュ
- QUARKUS-2246 Integrate Vertx HTTP 拡張機能とカスタム CredentialsProvider
- QUARKUS-2284 OpenShift Serverless が、OpenShift Serverless Functions を使用する場合にこれをサポートするように要求している
- QUARKUS-2328 TP からフルサポートへの Qute Templating のプロモート
- QUARKUS-2329 TP から完全サポートへの RESTEasy Reactive Qute のプロモート
- QUARKUS-2330 TP から完全サポートへの RESTEasy Qute のプロモート
- QUARKUS-2331 Kubernetes Config 拡張機能の TP からフルサポートへのプロモート
- QUARKUS-2332 Reactive DB2 クライアントのドロップ TP サポート
- QUARKUS-2335 アプリケーションは、Quarkus ネイティブビルドでより多くの CPU リソースを消費します。
- QUARKUS-2349 ネイティブアプリケーション用に Java 17 とドロップ Java 11 をサポートします。
- QUARKUS-2367: OpenShift Serverless に必要な Funqy 拡張をサポート対象ステータスに移動する
- QUARKUS-2387 TP からフルサポートへの Mailer 拡張のプロモート
- QUARKUS-2388 Spring Data REST の TP からフルサポートへのプロモート
- QUARKUS-2389 OpenID Connect Client Filter Reactive を TP からフルサポートに
- QUARKUS-2390 quarkus-hibernate-orm-rest-data-panache 拡張を TP からフルサポートにプロモート
- QUARKUS-2392 RESTEasy Mutiny のテクノロジープレビューサポート
- QUARKUS-2393 REST Client 拡張機能の Mutiny サポートのドロップテクノロジープレビュー
- QUARKUS-2394 OpenTelemetry Jaeger エクスポーターのドロップ TP
- QUARKUS-2395: セキュリティー JPA 拡張からの TP ドロップ
- QUARKUS-2396 Eclipse Vert.x GraphQL のドロップ TP
- QUARKUS-2453 (quarkus-reactive-routes エクステンションを非推奨化)
- QUARKUS-2473 Repositories declared in quarkus-platform-config-2.13.0.CR1-redhat-00001.pom
- QUARKUS-2478 Microsoft SQL JDBC ドライバーを 11.2.0.jre11 に更新
- QUARKUS-2479 SmallRye Config SecretKeys サポート
- QUARKUS-2480 アノテーション付き Bean を介して Hibernate Search を設定するための @SearchExtension を導入
- QUARKUS-2481 JAXB コンテキストのカスタム設定を指定
- QUARKUS-2482 quarkus-extension-maven-plugin が優先される quarkus-bootstrap-maven-plugin を非推奨化
- QUARKUS-2483 SQL クライアントに対する Kubernetes サービスバインディングのサポート
- QUARKUS-2484 SmallRye Reactive Messaging 3.16
- QUARKUS-2485 SmallRye GraphQL 非ブロッキングサポート
- QUARKUS-2486 Keycloak が 18 を超えました。
- QUARKUS-2487 Reactive Routes および RESTEasy Reactive の圧縮サポート
- QUARKUS-2489 OIDC Back channel logout
- QUARKUS-2490 特定のパスの HTTP ヘッダーを追加する
- QUARKUS-2491 OIDC - Proof Of Key for Code Exchange (PKCE)のサポート
- QUARKUS-2492 QuarkusTransaction API
- QUARKUS-2538 Quarkus が製品化プロセスの一部として依存する製品を一覧表示
- QUARKUS-2558 Day -9: [Eng] EARF と ProdSec を更新する必要があるかどうかを確認する
- OIDC BackChannelLogoutHandler の QUARKUS-2592 NPE
- QUARKUS-2672 Infinispan クライアントは新しくリリースされた Red Hat Data Grid 8.4 と整合していません。
- QUARKUS-2693 Keycloak コンテナーが devmode で起動できない
- QUARKUS-2706 Quarkus CLI が io.quarkus:quarkus-bom のエクステンションカタログを解決できない
- QUARKUS-2758 flapdoodle を 3.5.2 にアップグレードし、それを Dependabot に追加します。
- QUARKUS-2759 適切な汎用型を RestResponse とともに使用する
- QUARKUS-2760 HTTP リファレンスガイド の HTTPS ポート設定を追加
- QUARKUS-2761 仮想スレッドのドキュメントにあるメソッド名の再名前
- QUARKUS-2762 Web サイトのドキュメントブランチを同期するときにディレクトリーを作成する
- QUARKUS-2763 セキュリティーガイドのリストが壊れたマークアップの修正
- QUARKUS-2764 アップグレード narayana から 5.13.1.Final
- QUARKUS-2765 Misc 4 ネイティブジョブに対して高いタイムアウトを設定します
- QUARKUS-2766 Quartz: 後方互換性を追加する
- QUARKUS-2767 テストクラス前のコンパイルアプリケーションクラス
- QUARKUS-2768 Fixed code in stork-reference.adoc
- QUARKUS-2769 仮想スレッドドキュメントでのコンパイルエラー
- QUARKUS-2770 最新の brew openjdk パッケージの更新
- QUARKUS-2771 /devtools/gradle 内の 1.0.0 から 1.1.0 への Bump com.gradle.plugin-publish
- Stork ガイドの QUARKUS-2772 Fixed エラー
- QUARKUS-2773 Fix IsDockerWorking class not using TestContainersStrategy
- QUARKUS-2774 コンテナービルドにデフォルトで Mandrel を使用します。
- QUARKUS-2775 ドキュメント:CA 証明書埋め込みに関する修正ステートメント
- QUARKUS-2776 仮想スレッドガイドの Correct 誤字とコードスタイル
- QUARKUS-2777 ターゲットをすぐに削除する代わりに、ターゲットがすでに存在する場合に一時的な uber-jar を生成します。
- QUARKUS-2778 Demote the "test dir mapping" ログメッセージをデバッグします。
- QUARKUS-2779 ドキュメントの修正テーブルエントリー
- QUARKUS-2780 Kubernetes クライアント拡張の ExtensionAdapter のすべての実装を登録する
- QUARKUS-2781 JReleaser 記述子の非推奨のプロパティーの置き換え
- QUARKUS-2782 仮想スレッドドキュメントでのコンパイルエラー
- QUARKUS-2783 aroundInvoke インターセプターが正しいメソッドパラメーターを取得することを確認する
- QUARKUS-2784 Mandrel 22.3 が -java11 イメージを提供しなくなったドキュメント
- QUARKUS-2785 重複コンテキストを伝播する場合は、リクエストスコープをドロップする
- QUARKUS-2786 REST データの javax.annotation.security アノテーションを伝播する
- QUARKUS-2787 Rest Data Panache: 正しい Open API 統合
- QUARKUS-2788 Panache REST Data 拡張機能での RolesAllowed の設定をサポート
- QUARKUS-2789 @QuarkusTest と @QuarkusMainTest を混在させることができます。
- QUARKUS-2790 ネイティブ GC ポリシーをスペース/時刻から適応に切り替えます(デフォルト)。
- QUARKUS-2829 Quarkus でマネージド Vert.x を使用する場合の Micrometer メトリクスの内部サポート
-
QUARKUS-2835 Windows で
DuplicatedContextTest#testThatBlockingEventConsumersAreCalledOnDuplicatedContextを無効にします - QUARKUS-2836 Reduce Config startup footprint
- QUARKUS-2837 Backport Vert.x Metrics サポート
- QUARKUS-2838 OpenTelemetry - Fix missing char
- QUARKUS-2839 すべてのメソッドについて、Spring Data Rest のセキュリティーアノテーションを伝播します
- QUARKUS-2840 TestMojo がテストスコープの依存関係を解決していることを確認
- QUARKUS-2841 HTTP Vert.x 拡張の MultiPartConfig が十分に文書化されていません。
- QUARKUS-2842 CompletableFuture smart dispatch support
- QUARKUS-2843 quarkus-cache 拡張機能のステータスを stable に変更
- QUARKUS-2844 システムプロパティーから、Panache クエリーのハードコーディングされた行区切りへの切り替え
- QUARKUS-2845 ネイティブイメージのビルドの誤字の修正
- QUARKUS-2846 新しい行文字が Panache プロジェクションを中断しないことを確認する
- QUARKUS-2847 ワークスペースの読み込み中に、常に raw モデルをキャッシュに格納します
-
QUARKUS-2925 /
quarkusと maven リポジトリーの異なるバージョン - QUARKUS-2978 ExceptionMapper<WebApplicationException> is not work in DEV mode
- QUARKUS-3158 ベアラートークンのみが想定される場合はセッションと PKCE 暗号化キーを作成しません
- QUARKUS-3159 2.13: CORS が有効な場合は、デフォルトで Origin をサポートしません。
- QUARKUS-3161 Fix security-csrf-prevention.adoc
- QUARKUS-3163 openjdk コンテナーイメージ 1.15 を使用するようにコード起動を更新する
- QUARKUS-3164 Logging with Panache: fix LocalVariablesSorter usage
- QUARKUS-3167: メンテナンスおよびプレビューリリース用に SDKMAN リリースのマイナーリリースを作成する
- QUARKUS-3168 Backport ConfigBuilder クラスがネイティブモードで 2.13 に動作することを確認する
- QUARKUS-3169 Narayana LRA コーディネーター Docker イメージ用の新しいホーム
- QUARKUS-3170 パスワードが設定されていない場合のトラストストア REST クライアント設定
- QUARKUS-3173 Reinitialize sun.security.pkcs11.P11Util (ランタイム時に)
- QUARKUS-3174 Prevent SSE 書き込みが原因でヘッダーが蓄積される可能性がある
- QUARKUS-3175 Filter out RESTEasy related warning in ProviderConfigInjectionWarningsTest
- QUARKUS-3176: 親モジュールに依存するモジュールの前にワークスペースにロードされていることを確認します。
- QUARKUS-3177 Fix copy paste error in qute docs
-
QUARKUS-3178 ルートレスモードの場合のみ
--userns=keep-idを Podman にパスします。 - QUARKUS-3179 送信されたチャレンジが再開したときに HTTP2 リクエストが停止する修正
- QUARKUS-3180 dev モードのソースおよびクラスパスを初期化するときに、有効な Maven プロジェクトのビルド設定を使用します。
- QUARKUS-3181 quarkus:go-offline がテストスコープの依存関係を適切にサポートしていることを確認してください。
- QUARKUS-3182 [2.13.x] - 新しいコンテナーイメージを使用するように 2.13 を更新
- QUARKUS-3184 ネイティブサポートに "ARRAY" ではなく SchemaType.ARRAY を使用します。
- QUARKUS-3185 create-app.adoc にロジックが単純化され、ストリームの定義を許可する
- QUARKUS-3187 OpenTelemetry のコンテキスト伝搬を許可する
- QUARKUS-3188 Fix RestAssured URL 処理と、QuarkusProdModeTest での予期しない再起動
- MacOS と Podman を使用する場合の QUARKUS-3191 ドロップドロップオプション:z' バインドオプション
- QUARKUS-3194 Netty のリフレクション設定ファイルを除外する
- QUARKUS-3195: Infinispan 14 から API 依存関係を統合(#ISPN-14268)
1.9. 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Red Hat ビルドの Quarkus 2.13 の既知の問題を記載しています。
1.9.1. バージョン 2.13.9.SP1 のセキュリティー修正が原因で、CDI インターセプターを使用してマルチテナント OIDC 設定を解決する リンクのコピーリンクがクリップボードにコピーされました!
説明
CVE-2023-6267 に対応するために Red Hat ビルドの Quarkus 2.13.9.SP1 に実装されたセキュリティー修正により、重大な変更が導入されました。
この破壊的変更は、RestEasy Classic で複数の OIDC プロバイダーを使用する場合にのみ関係があり、コンテキストと依存性注入 (CDI) インターセプターを使用して OIDC テナント設定識別子をプログラム的に解決する場合に発生します。
この修正が行われる前は、CDI インターセプターは認証チェックの前に実行されていました。修正を導入すると、CDI インターセプターがトリガーされる前に認証が行われます。したがって、CDI インターセプターを使用して複数の OIDC プロバイダー設定識別子を解決することは、機能しなくなります。RestEasy Reactive アプリケーションへの影響はありません。
回避策
現在の OIDC 設定のテナント ID を解決するには、quarkus.oidc.TenantResolver メソッドを使用します。
詳細は、Quarkus の OpenID Connect (OIDC)マルチテナンシーの使用ガイドの アノテーションによるテナント識別子の解決 セクションを参照してください。
1.9.2. Red Hat ビルドの Quarkus 2.13.9 はドメインソケットをサポートしません。 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus 2.13.x および 3.2 は、ネイティブトランスポートおよび関連する機能をサポートしません。したがって、ネイティブの epoll または io_uring トランスポートの使用と、ネイティブトランスポートを必要とするドメインソケットの使用もサポートされていません。
1.9.3. パスベースのルールを使用して HTTP エンドポイントを保護する場合の HTTP セキュリティーの回避の問題 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ビルドの Quarkus バージョン 2.13.8.SP2 より前のバージョンでは、セキュリティーの問題 CVE-2023-4853 が存在し、攻撃者がセキュリティーポリシーを完全に回避する可能性があり、承認されていないエンドポイントアクセスやサービス拒否につながる可能性がありました。
パスベースのルールを使用して Quarkus アプリケーションの HTTP エンドポイントをセキュアにした場合は、Quarkus アプリケーションが Red Hat ビルドの Quarkus 2.13.8.SP2 に更新する必要があります。または、Red Hat Product Security Center が提供する回避策オプションに従います。
このセキュリティー問題の詳細と、さまざまな軽減策オプションの詳細は、Red Hat Security Bulletin RHSB-2023-002 の Mitigation セクションを参照してください。
1.9.4. CORS フィルターによるユーザーエクスペリエンス リンクのコピーリンクがクリップボードにコピーされました!
説明
Red Hat ビルドの Quarkus 2.13.8.SP1 では、Vert.x クロスオリジンリソース共有(CORS)フィルターの Vert.x HTTP CORS フィルターは厳格で、このようなオリジンを受け入れるようにフィルターが明示的に設定されていない場合に same-origin リクエストを拒否します。
回避策
同じオリジン要求を受け入れるようにフィルターを設定します。たとえば、HTML ページを含む https://my.org で Quarkus アプリケーションをホストし、そのページに更新を https://my.org に戻す JavaScript が含まれている場合は、同じオリジン要求を許可するために application.properties ファイルに以下の設定を適用する必要があります。
quarkus.http.cors=true quarkus.http.cors.origins=https://my.org
quarkus.http.cors=true
quarkus.http.cors.origins=https://my.org
CVE-2022-4147 quarkus-vertx-http を修正した結果により、同じホストオリジンを許可するように Vert.x HTTP CORS フィルターを設定する必要があります。Quarkus の CORS セキュリティー誤設定:OWASP A05_2021 レベル。
Red Hat は、Red Hat ビルドの Quarkus の今後のリリースで、この要件を緩和するかどうかを評価します。
1.11. Red Hat OpenShift の Quarkus メータリングラベル リンクのコピーリンクがクリップボードにコピーされました!
メータリングラベルを Quarkus Pod に追加し、OpenShift Metering Operator を使用して Red Hat サブスクリプションの詳細を確認できます。
- メータリングラベルは、Operator またはテンプレートがデプロイおよび管理する Pod に追加しないでください。
- OpenShift Container Platform バージョン 4.8 以前では、Metering Operator を使用してラベルを Pod に適用できます。バージョン 4.9 以降は、メータリング Operator は直接置き換えなしには利用できなくなりました。
Quarkus は以下のメータリングラベルを使用できます。
-
com.company: Red_Hat -
rht.prod_name: Red_Hat_Runtimes -
rht.prod_ver: YYYY-Q1 -
rht.comp: "Quarkus" -
rht.comp_ver: 2.13.9 -
rht.subcomp_t: application
改訂日時: 2024-04-23