diff --git a/posts/2026-04-21-26.0.0.4.adoc b/posts/2026-04-21-26.0.0.4.adoc index 7e211fcbd..9f911f6ce 100644 --- a/posts/2026-04-21-26.0.0.4.adoc +++ b/posts/2026-04-21-26.0.0.4.adoc @@ -10,6 +10,9 @@ seo-description: This release introduces support for selecting JWT signature alg blog_description: This release introduces support for selecting JWT signature algorithms from JOSE headers and adds Java 26 support. It also removes the default LTPA keys password for enhanced security, and includes file transfer restrictions and security vulnerability fixes. open-graph-image: https://openliberty.io/img/twitter_card.jpg open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/04/21/26.0.0.4.html --- = Enhanced JWT validation, Java 26 support, and more in 26.0.0.4 Navaneeth S Nair diff --git a/posts/ja/2026-04-21-26.0.0.4.adoc b/posts/ja/2026-04-21-26.0.0.4.adoc new file mode 100644 index 000000000..d3d7fae9d --- /dev/null +++ b/posts/ja/2026-04-21-26.0.0.4.adoc @@ -0,0 +1,344 @@ +--- +layout: post +title: "26.0.0.4 での JWT 検証の強化、Java 26 サポートなど" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 26.0.0.4 での JWT 検証の強化、Java 26 サポートなど - OpenLiberty.io +seo-description: このリリースでは、JOSE ヘッダーから JWT 署名アルゴリズムを選択するサポートが導入され、Java 26 サポートが追加されました。また、セキュリティ強化のためにデフォルトの LTPA キーパスワードが削除され、ファイル転送制限とセキュリティ脆弱性の修正が含まれています。 +blog_description: このリリースでは、JOSE ヘッダーから JWT 署名アルゴリズムを選択するサポートが導入され、Java 26 サポートが追加されました。また、セキュリティ強化のためにデフォルトの LTPA キーパスワードが削除され、ファイル転送制限とセキュリティ脆弱性の修正が含まれています。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2026/04/21/26.0.0.4.html +additional_authors: +- name: Ismath Badsha (校正) + github: https://github.com/IsmathBadsha + image: https://avatars.githubusercontent.com/IsmathBadsha +--- += 26.0.0.4 での JWT 検証の強化、Java 26 サポートなど +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +このリリースでは、JOSE ヘッダーから JWT 署名アルゴリズムを選択するサポートが導入され、Java 26 サポートが追加されました。また、セキュリティ強化のためにデフォルトの LTPA キーパスワードが削除され、ファイル転送制限とセキュリティ脆弱性の修正が含まれています。 + +link:{url-about}[Open Liberty] 26.0.0.4 では: + +* <> +* <> +* <> +* <> +* <> +* <> + + +// // // // // // // // +// In the preceding section: +// Replace the TAG_X with a short label for the feature in lower-case, eg: mp3 +// Replace the FEATURE_1_HEADING with heading the feature section, eg: MicroProfile 3.3 +// Where the updates are grouped as sub-headings under a single heading +// (eg all the features in a MicroProfile release), provide sub-entries in the list; +// eg replace SUB_TAG_1 with mpr, and SUB_FEATURE_1_HEADING with +// Easily determine HTTP headers on outgoing requests (MicroProfile Rest Client 1.4) +// // // // // // // // + +26.0.0.4 で修正されたバグのリストは link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26004+label%3A%22release+bug%22[こちら] です。 + +link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリースのブログ投稿] もチェックして下さい。 + + +[#run] + +// // // // // // // // +// LINKS +// +// OpenLiberty.io site links: +// link:{url-prefix}/guides/maven-intro.html[Maven] +// +// Off-site links: +//link:https://openapi-generator.tech/docs/installation#jar[Download Instructions] +// +// IMAGES +// +// Place images in ./img/blog/ +// Use the syntax: +// image::/img/blog/log4j-rhocp-diagrams/current-problem.png[Logging problem diagram,width=70%,align="center"] +// // // // // // // // + +== 26.0.0.4 でアプリを開発して実行する + +もし link:{url-prefix}/guides/maven-intro.html[Maven] を使用しているなら、`pom.xml` に以下を含めます。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.12.0 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] を使用している場合は、`build.gradle` ファイルに以下を含めます。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:4.0.0' + } +} +apply plugin: 'liberty' +---- +// // // // // // // // +// In the preceding section: +// Replace the Maven `3.11.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-maven-plugin +// Replace the Gradle `3.9.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-gradle-plugin +// TODO: Update GHA to automatically do the above. If the maven.org is problematic, then could fallback to using the GH Releases for the plugins +// // // // // // // // + +link:{url-prefix}/docs/latest/container-images.html[コンテナ・イメージ] を使用する場合は以下です。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +または link:{url-prefix}/start/[ダウンロード・ページ] をご覧ください。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code]、または link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE] を使用している場合は、オープンソースの link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty 開発者ツール] を利用して、IDE 内から効果的な開発、テスト、デバッグ、およびアプリケーション管理を行うこともできます。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] + +[#file_transfer] +== `FileService` MBean にブロックリストを追加 +Liberty の `restConnector-2.0` 機能によって提供される `FileService` MBean に、`blocklist` 属性が追加されました。この属性は、`server.xml` ファイルの `` 設定要素によって構成されます。この属性のデフォルト値は `${server.output.dir}/resources/security` です。この機能強化により、デフォルトで `${server.output.dir}/resources/security` へのファイル転送アクセスを制限することで、セキュリティ脆弱性 link:https://github.com/advisories/GHSA-c39w-6qgm-5cp7[CVE-2025-14915] が解決されます。 + +`${server.output.dir}/resources/security` への FileTransfer アクセスが必要な場合は、空のブロックリストを設定することで元の動作を復元できます。 + +詳細については、link:https://www.ibm.com/docs/en/was-liberty/nd?topic=manually-file-transfer[ドキュメント] を参照してください。 + +[#ltpa] +== デフォルトの LTPA キーパスワードの削除 + +セキュリティ脆弱性 link:https://www.ibm.com/support/pages/node/7266845[CVE-2025-14917] を解決するために、デフォルトの LTPA キーパスワードが削除されました。 + +以前は、`` 要素で `keysPassword` 属性が定義されていない場合、LTPA キーのデフォルトパスワードが使用されていました。この変更により、`keysPassword` 属性が設定されていない場合、デフォルトパスワードは使用されなくなりました。 + +既存のサーバーの場合、LTPA キーパスワードが `server.xml` ファイルで構成されていない場合は、`server.env` ファイルの `keystore_password` が使用されます。この値は、`ltpa.keys` ファイル内の LTPA キーを再暗号化します。LTPA キー自体は影響を受けません。`keystore_password` は、`server create` コマンドで `--no-password` オプションが使用されない限り、サーバー作成時に `server.env` ファイルに構成されます。 + +`server.xml` ファイルの `` 要素で `keysPassword` が定義されておらず、`server.env` ファイルで `keystore_password` が定義されていない場合、LTPA サービスは失敗します。 +以下のエラーメッセージが表示されます。 + +[source,text] +---- +CWWKS4118E: LTPA configuration error. A keysPassword attribute is not configured on the element, the 'ltpa_keys_password' environment variable is not set, and the 'keystore_password' environment variable is not set. +---- + +以下の手順を実行して、LTPA キーパスワードが設定されていることを確認してください。 + +. `server.xml` ファイルの `` 要素に `keysPassword` 属性が提供されているかどうかを確認します(例: ``)。 +* 提供されている場合、この更新は影響せず、それ以上のアクションは必要ありません。 +* 提供されていない場合は、追加 *しないで* 次のステップに進んでください。 +. `server.env` ファイルに `keystore_password` 環境変数が存在するかどうかを確認します(例: `keystore_password=myKeystorePassword`)。 +* 存在する場合、サーバーの起動時に、以前にデフォルトの `keysPassword` で暗号化されていた LTPA キーを再暗号化するために `keystore_password` が使用されます。 +* 存在しない場合は、次のステップに進んでください。 +. `server.env` ファイルに以下の環境変数を追加します(ここでは `keystore_password` を使用し、新しいサーバー用の次のセクションで説明する `ltpa_keys_password` では *ない* ことを確認してください)。 ++ +[source,properties] +---- +keystore_password=your-desired-password +---- ++ +* サーバーの起動時に、以前にデフォルトの `keysPassword` で暗号化されていた LTPA キーを再暗号化するために `keystore_password` が使用されます。 + +新しいサーバーの場合、サーバー作成時に `ltpa_keys_password` 値がランダムに生成されます。これは、`server create` コマンドで `--no-password` オプションが指定されない限り、`server.env` ファイルに保存されます。`` 要素に `keysPassword` 属性が定義されていない場合、ランダムに生成された `ltpa_keys_password` が使用されます。 + +詳細については、link:https://openliberty.io/docs/latest/reference/config/ltpa.html[LTPA] 設定要素を参照してください。 + + +[#jwt] +== JOSE ヘッダーから JWT 署名および復号化アルゴリズムを選択するサポート + +JSON Web Token (JWT) は、さまざまな暗号署名アルゴリズムを使用して署名できます。このリリースでは、JWT Consumer、MicroProfile JWT、OpenID Connect Client、および Social Media Login 機能が、JOSE ヘッダーから JWT 署名アルゴリズムを選択することをサポートします。このサポートにより、トークンヘッダーに基づいて異なる署名アルゴリズムを使用できるようになります。 + +以前は、`server.xml` ファイルの各設定に対して、1 つの署名アルゴリズム(例: `RS256`)のみを構成できました。受信した JWT が異なるアルゴリズムで署名されている場合、検証は失敗していました。この更新により、JWT ヘッダーの署名アルゴリズムを検証に使用できるようになります。これにより、単一の設定内で異なる署名アルゴリズムを使用する柔軟性が提供されます。 + +=== 使用方法 + +ヘッダーからの署名アルゴリズム選択を有効にするには、`signatureAlgorithm` 属性を `FROM_HEADER` に設定し、オプションで `allowedSignatureAlgorithms` 属性を構成して、許可されるアルゴリズムを指定します。 + +`allowedSignatureAlgorithms` が構成されていない場合、デフォルトリストには、Open Liberty がサポートするすべての署名アルゴリズムが含まれます: `RS256、RS384、RS512、HS256、HS384、HS512、ES256、ES384`、および `ES512`。 + +非対称アルゴリズムとトラストストア設定で `FROM_HEADER` を使用する場合、対応する公開キーのエイリアスは、対応するアルゴリズムでプレフィックスを付ける必要があります(例: `RS256_keyalias`)。エイリアス名の残りの部分は、署名アルゴリズム文字列で始まる限り、何でも構いません。検証中、サーバーは JWT のヘッダーで指定されたアルゴリズムで始まるエイリアスをトラストストアで検索します。アルゴリズムプレフィックス付きのエイリアスが見つからない場合、クライアントは、構成されている場合、`trustedAlias` 属性(`jwtConsumer` の場合)または `trustAliasName` 属性(`openidConnectClient`、`oidcLogin`、および `mpJwt` の場合)で指定されたエイリアスの使用にフォールバックします。トラストストア内に署名アルゴリズムプレフィックスを持つ複数のエイリアスが存在する場合、Liberty は最初に見つかったものを使用します。 + +サポートされている要素にこれらの設定を適用する方法の例については、以下の `server.xml` ファイル設定を参照してください。 + +[source,xml] +---- + + + + + + + +---- + +=== 詳細情報 + +*サーバー設定:* + +* link:https://openliberty.io/docs/latest/reference/config/openidConnectClient.html[openidConnectClient] +* link:https://openliberty.io/docs/latest/reference/config/jwtConsumer.html[jwtConsumer] +* link:https://openliberty.io/docs/latest/reference/config/mpJwt.html[mpJwt] +* link:https://openliberty.io/docs/latest/reference/config/oidcLogin.html[oidcLogin] + +*ドキュメント:* + +* link:https://openliberty.io/docs/latest/reference/feature/openidConnectClient-1.0.html[OpenID Connect Client 1.0] +* link:https://openliberty.io/docs/latest/reference/feature/jwt-1.0.html[JSON Web Token 1.0] +* link:https://openliberty.io/docs/latest/reference/feature/mpJwt-2.1.html[MicroProfile JWT 2.1] +* link:https://openliberty.io/docs/latest/reference/feature/socialLogin-1.0.html[Social Media Login 1.0] + +[#java_26] +=== Java 26 のサポート +Java 26 は、以前のバージョンよりも新しい機能と拡張機能を導入する最新の Java リリースであり、確認すると便利です。このリリースは長期サポート (LTS) リリースではありません。 + +link:https://openjdk.org/projects/jdk/26/[Java 26] には 10 の新機能 (JEP) があります。5 つはテスト機能で、5 つは完全に提供されています。 + +*テスト機能:* + +* 524: link:https://openjdk.org/jeps/524[PEM Encodings of Cryptographic Objects (Second Preview)] +* 525: link:https://openjdk.org/jeps/525[Structured Concurrency (Sixth Preview)] +* 526: link:https://openjdk.org/jeps/526[Lazy Constants (Second Preview)] +* 529: link:https://openjdk.org/jeps/529[Vector API (Eleventh Incubator)] +* 530: link:https://openjdk.org/jeps/530[Primitive Types in Patterns, instanceof, and switch (Fourth Preview)] + +*提供された機能:* + +* 500: link:https://openjdk.org/jeps/500[Prepare to Make Final Mean Final] +* 504: link:https://openjdk.org/jeps/504[Remove the Applet API] +* 516: link:https://openjdk.org/jeps/516[Ahead-of-Time Object Caching with Any GC] +* 517: link:https://openjdk.org/jeps/517[HTTP/3 for the HTTP Client API] +* 522: link:https://openjdk.org/jeps/522[G1 GC: Improve Throughput by Reducing Synchronization] + +Java 26 の新しい変更 JEP 500(「Prepare to Make Final Mean Final」)は、深いリフレクションを使用する際に final フィールドの変更を制限することで、final フィールドの真の不変性の強制を開始します。 +Java 26 では、このような変更は引き続き機能しますが、デフォルトで実行時警告をトリガーし、開発者がより厳格な強制に備えることができます。 +将来のリリースでは、例外をスローする可能性が高く、final が真に不変になります。 + +開発者は、JVM フラグ(例: `--illegal-final-field-mutation=deny`)を使用して、この厳格な動作に早期にオプトインし、問題を早期に検出できます。 +この変更により、プログラムの正確性、セキュリティ、および JVM の最適化が向上します。 + +これらの変更を今すぐ活用して、アプリケーションとマイクロサービスが Java 26 でどのように動作するかを評価する時間を増やしてください。 + +link:https://developer.ibm.com/languages/java/semeru-runtimes/downloads/[IBM Semeru Runtime 26] または link:https://adoptium.net/temurin/releases/?version=26[Temurin 26] の最新リリースをダウンロードし、Open Liberty link:{url-prefix}/start/#runtime_releases[26.0.0.4] をダウンロードしてインストールすることで、今日から始めることができます。Liberty サーバーの link:{url-prefix}/docs/latest/reference/config/server-configuration-overview.html#server-env[server.env] ファイルを更新し、`JAVA_HOME` を Java 26 インストールディレクトリに設定してテストを開始してください。 + +Java 26 の詳細については、Java 26 の link:https://jdk.java.net/26/release-notes[リリースノートページ] および link:https://docs.oracle.com/en/java/javase/26/docs/api/index.html[API Javadoc ページ] を参照してください。 + + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33622 +// Contact/Reviewer: ncpibm +// // // // // // // // +[#displayCustomizedExceptionText] +== Web Container の `displayCustomizedExceptionText` プロパティのドキュメント +このリリースでは、`` 設定の `displayCustomizedExceptionText` 属性のドキュメントが追加されました。これにより、ユーザーは Liberty のデフォルトのエラーメッセージ(SRVE0218E: Forbidden や SRVE0232E: An exception occurred など)を、より明確なユーザー定義メッセージでオーバーライドできます。 + +この機能は、シンプルな `server.xml` ファイル設定を通じて有効になり、カスタムメッセージを特定の HTTP ステータスコード(`403` および `500`)にマッピングできます。 + +テストにより、これらのカスタムメッセージがサポートされているすべてのプラットフォームで Liberty のデフォルトを正しく置き換えることが保証され、構成されたテキストがすべてのシナリオで一貫して返されることが確認されます。 + +[source,xml] +---- + +---- + +// DO NOT MODIFY THIS LINE. + +// // // // // // // // +// In the preceding section: +// Replace TAG_X/SUB_TAG_X with the given tag of your secton from the contents list +// Replace SUB_FEATURE_TITLE/FEATURE_X_TITLE with the given title from the contents list +// Replace FEATURE with the feature name for the server.xml file e.g. mpHealth-1.4 +// Replace LINK with the link for extra information given for the feature +// Replace LINK_DESCRIPTION with a readable description of the information +// // // // // // // // + +[#CVEs] +== このリリースでのセキュリティ脆弱性 (CVE) の修正 +[cols="5*"] +|=== +|CVE |CVSS スコア |脆弱性評価 |影響を受けるバージョン |備考 + +|https://www.cve.org/CVERecord?id=CVE-2025-14915[CVE-2025-14915] +|6.5 +|権限昇格 +|17.0.0.3-26.0.0.3 +|`restConnector-2.0` 機能に影響 + +|https://www.cve.org/CVERecord?id=CVE-2025-14917[CVE-2025-14917] +|6.7 +|セキュリティの弱体化 +|17.0.0.3-26.0.0.3 +|`appSecurity-1.0`、`appSecurity-2.0`、`appSecurity-3.0`、`appSecurity-4.0`、および `appSecurity-5.0` 機能に影響 + +|https://www.cve.org/CVERecord?id=CVE-2026-1561[CVE-2026-1561] +|5.4 +|サーバーサイドリクエストフォージェリ +|17.0.0.3-26.0.0.3 +|`samlWeb-2.0` 機能に影響 + +|https://www.cve.org/CVERecord?id=CVE-2026-29063[CVE-2026-29063] +|8.7 +|プロトタイプ汚染 +|17.0.0.3-26.0.0.3 +|`openapi-3.1`、`mpOpenAPI-1.0`、`mpOpenAPI-1.1`、`mpOpenAPI-2.0`、`mpOpenAPI-3.0`、`mpOpenAPI-3.1`、`mpOpenAPI-4.0`、および `mpOpenAPI-4.1` 機能に影響 + +|=== +// +// If there are no CVEs fixed in this release, replace the table with: +// "There are no security vulnerability fixes in Open Liberty [26.0.0.4]." +// // // // // // // // +過去のセキュリティ脆弱性修正のリストについては、link:{url-prefix}/docs/latest/security-vulnerabilities.html[セキュリティ脆弱性 (CVE) リスト] を参照してください。 + + +// // // // // // // // +// In the preceding section: +// For this section ask either Michal Broz or Tom Evans or the #openliberty-release-blog channel for Notable bug fixes in this release. +// Present them as a list in the order as provided, linking to the issue and providing a short description of the bug and the resolution. +// If the issue on Github is missing any information, leave a comment in the issue along the lines of: +// "@[issue_owner(s)] please update the description of this `release bug` using the [bug report template](https://github.com/OpenLiberty/open-liberty/issues/new?assignees=&labels=release+bug&template=bug_report.md&title=)" +// Feel free to message the owner(s) directly as well, especially if no action has been taken by them. +// For inspiration about how to write this section look at previous blogs e.g- 20.0.0.10 or 21.0.0.12 (https://openliberty.io/blog/2021/11/26/jakarta-ee-9.1.html#bugs) +// // // // // // // // + + + +== 今すぐ Open Liberty 26.0.0.4 を入手する + +<> から入手できます。 diff --git a/posts/ja/2026-05-19-26.0.0.5.adoc b/posts/ja/2026-05-19-26.0.0.5.adoc new file mode 100644 index 000000000..4398b5533 --- /dev/null +++ b/posts/ja/2026-05-19-26.0.0.5.adoc @@ -0,0 +1,407 @@ +--- +layout: post +title: "26.0.0.5 の Jakarta EE 11、Spring Boot 4.0、その他の更新" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 26.0.0.5 の Jakarta EE 11、Spring Boot 4.0、その他の更新 - OpenLiberty.io +seo-description: このリリースでは、Open Liberty に Jakarta EE 11 と Spring Boot 4.0 アプリケーションの正式サポート、および更新された TLS/SSL 暗号処理が導入され、Spring Boot デプロイメントのサポート強化と SSL 暗号設定の簡素化が実現されます。 +blog_description: このリリースでは、Open Liberty に Jakarta EE 11 と Spring Boot 4.0 アプリケーションの正式サポート、および更新された TLS/SSL 暗号処理が導入され、Spring Boot デプロイメントのサポート強化と SSL 暗号設定の簡素化が実現されます。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2026/05/19/26.0.0.5.html +additional_authors: +- name: Ismath Badsha (校正) + github: https://github.com/IsmathBadsha + image: https://avatars.githubusercontent.com/IsmathBadsha +--- += 26.0.0.5 の Jakarta EE 11、Spring Boot 4.0、その他の更新 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +// // // // // // // // +// In the preceding section: +// Do not insert any blank lines between any of the lines. +// Do not remove or edit the variables on the lines beneath the author name. +// +// "open-graph-image" is set to OL logo. Whenever possible update this to a more appropriate/specific image (For example if present a image that is being used in the post). However, it +// can be left empty which will set it to the default +// +// "open-graph-image-alt" is a description of what is in the image (not a caption). When changing "open-graph-image" to +// a custom picture, you must provide a custom string for "open-graph-image-alt". +// +// Replace TITLE with the blog post title eg: MicroProfile 3.3 is now available on Open Liberty 20.0.0.4 +// Replace GITHUB_USERNAME with your GitHub username eg: lauracowen +// Replace DESCRIPTION with a short summary (~60 words) of the release (a more succinct version of the first paragraph of the post). +// Replace AUTHOR_NAME with your name as you'd like it to be displayed, eg: Laura Cowen +// +// Example post: 2020-04-09-microprofile-3-3-open-liberty-20004.adoc +// +// If adding image into the post add : +// ------------------------- +// [.img_border_light] +// image::img/blog/FILE_NAME[IMAGE CAPTION ,width=70%,align="center"] +// ------------------------- +// "[.img_border_light]" = This adds a faint grey border around the image to make its edges sharper. Use it around screenshots but not +// around diagrams. Then double check how it looks. +// There is also a "[.img_border_dark]" class which tends to work best with screenshots that are taken on dark +// backgrounds. +// Change "FILE_NAME" to the name of the image file. Also make sure to put the image into the right folder which is: img/blog +// change the "IMAGE CAPTION" to a couple words of what the image is +// // // // // // // // + +このリリースでは、Open Liberty に Jakarta EE 11、Spring Boot 4.0 アプリケーションの正式サポート、および更新された TLS/SSL 暗号処理が導入され、Spring Boot デプロイメントのサポート強化と SSL 暗号設定の簡素化が実現されます。 + +// // // // // // // // +// In the preceding section: +// Leave any instances of `tag::xxxx[]` or `end:xxxx[]` as they are. +// +// Replace RELEASE_SUMMARY with a short paragraph that summarises the release. Start with the lead feature but also summarise what else is new in the release. You will agree which will be the lead feature with the reviewers so you can just leave a placeholder here until after the initial review. +// // // // // // // // + +// // // // // // // // +// Replace the following throughout the document: +// Replace RELEASE_VERSION with the version number of Open Liberty, eg: 22.0.0.2 +// Replace RELEASE_VERSION_NO_PERIODS with the version number of Open Liberty wihtout the periods, eg: 22002 +// // // // // // // // + +link:{url-about}[Open Liberty] 26.0.0.5 の内容: + +* <> +* <> +* <> +* <> +* <> + +// // // // // // // // +// In the preceding section: +// Replace the TAG_X with a short label for the feature in lower-case, eg: mp3 +// Replace the FEATURE_1_HEADING with heading the feature section, eg: MicroProfile 3.3 +// Where the updates are grouped as sub-headings under a single heading +// (eg all the features in a MicroProfile release), provide sub-entries in the list; +// eg replace SUB_TAG_1 with mpr, and SUB_FEATURE_1_HEADING with +// Easily determine HTTP headers on outgoing requests (MicroProfile Rest Client 1.4) +// // // // // // // // + +26.0.0.5 で修正されたバグの一覧は link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26005+label%3A%22release+bug%22[こちら] です。 + +link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリースのブログ投稿] もチェックして下さい。 + + +[#run] + +// // // // // // // // +// LINKS +// +// OpenLiberty.io site links: +// link:{url-prefix}/guides/maven-intro.html[Maven] +// +// Off-site links: +//link:https://openapi-generator.tech/docs/installation#jar[Download Instructions] +// +// IMAGES +// +// Place images in ./img/blog/ +// Use the syntax: +// image::/img/blog/log4j-rhocp-diagrams/current-problem.png[Logging problem diagram,width=70%,align="center"] +// // // // // // // // + +== 26.0.0.5 でアプリを開発して実行する + +もし link:{url-prefix}/guides/maven-intro.html[Maven] を使用しているなら、`pom.xml` に以下を含めます。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.12.0 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] を使用している場合は、`build.gradle` ファイルに以下を含めます。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:4.0.0' + } +} +apply plugin: 'liberty' +---- +// // // // // // // // +// In the preceding section: +// Replace the Maven `3.11.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-maven-plugin +// Replace the Gradle `3.9.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-gradle-plugin +// TODO: Update GHA to automatically do the above. If the maven.org is problematic, then could fallback to using the GH Releases for the plugins +// // // // // // // // + +link:{url-prefix}/docs/latest/container-images.html[コンテナ・イメージ] を使用する場合は以下です。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +または、link:{url-prefix}/start/[ダウンロード・ページ] をご覧下さい。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code]、または link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE] を使用している場合は、オープンソースの link:{url-prefix}/docs/latest/develop-liberty-tools.html[Liberty developer tools] を活用して、IDE 内から効果的な開発、テスト、デバッグ、およびアプリケーション管理を行うこともできます。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/34848 +// Contact/Reviewer: jhanders34 +// // // // // // // // +[#jakarta_ee] +== Jakarta EE 11 Core Profile、Web Profile、および Platform + +Jakarta EE 11 Core Profile、Web Profile、および Platform が Open Liberty で正式にサポートされました。まず、各種ベータ版の期間を通じてフィードバックを提供してくださった皆様に感謝申し上げます。 + +Jakarta EE 11 は大きな節目となるリリースです。2017 年の Java EE 8 以来、プラットフォームに新しい仕様が追加された初めての Jakarta リリースであり、そのため Eclipse Foundation にプラットフォームが移管されて以降、初めて新しいコンポーネント仕様が提供されるリリースでもあります。既存の Java 仕様に対する多くの更新に加えて、Platform からすべてのオプション仕様と機能が削除されています。Liberty では、Jakarta EE 11 の機能と組み合わせることで、これらのオプション仕様と機能を引き続きサポートします。 + +Core Profile 仕様は、MicroProfile ベースのアプリケーションなど、軽量なクラウドネイティブ・アプリケーション向けのプロファイルを提供するために Jakarta EE 10 で導入されました。このリリースで Jakarta EE 11 サポートが導入されたことにより、MicroProfile 7.0 および 7.1 の機能も Jakarta EE 11 で動作するようになりました。MicroProfile 7 アプリケーションは、Jakarta EE 10 または Jakarta EE 11 のいずれの機能を使用しても実行できます。 + +以下の仕様が Jakarta Platform、および Core Profile と Web Profile を構成します。 + +=== Jakarta EE Core Profile 11 +[[core_profile]] +[cols="4,2,3",options="header"] +|=== +| Specification |Updates |Liberty Feature Documentation + +| link:https://jakarta.ee/specifications/annotations/3.0/[Annotations 3.0] |Major update |link:{url-prefix}/docs/latest/reference/feature/cdi-4.1.html[cdi-4.1] +| link:https://jakarta.ee/specifications/restful-ws/4.0/[RESTful Web Services 4.0] |Major update | link:{url-prefix}/docs/latest/reference/feature/restfulWS-4.0.html[restfulWS-4.0], link:{url-prefix}/docs/latest/reference/feature/restfulWSClient-4.0.html[restfulWSClient-4.0] +| link:https://jakarta.ee/specifications/cdi/4.1/[Context and Dependency Injection 4.1 Lite] | Minor update | link:{url-prefix}/docs/latest/reference/feature/cdi-4.1.html[cdi-4.1] +| link:https://jakarta.ee/specifications/interceptors/2.2/[Interceptors 2.2] |Minor update |link:{url-prefix}/docs/latest/reference/feature/cdi-4.1.html[cdi-4.1] +| link:https://jakarta.ee/specifications/dependency-injection/2.0/[Dependency Injection 2.0] |Unchanged |link:{url-prefix}/docs/latest/reference/feature/cdi-4.1.html[cdi-4.1] +| link:https://jakarta.ee/specifications/jsonb/3.0/[JSON Binding 3.0] | Unchanged |link:{url-prefix}/docs/latest/reference/feature/jsonb-3.0.html[jsonb-3.0] +| link:https://jakarta.ee/specifications/jsonp/2.1/[JSON Processing 2.1] |Unchanged | link:{url-prefix}/docs/latest/reference/feature/jsonp-2.1.html[jsonp-2.1] +|=== + +=== Jakarta EE Web Profile 11 +[[web_profile]] +[cols="4,2,3",options="header"] +|=== +| Specification |Updates |Liberty Feature Documentation + +| link:https://jakarta.ee/specifications/coreprofile/11/[Jakarta EE Core Profile 11] |Major Update |See previous <> +| link:https://jakarta.ee/specifications/data/1.0/[Data 1.0] |*New* | link:{url-prefix}/docs/latest/reference/feature/data-1.0.html[data-1.0] +| link:https://jakarta.ee/specifications/expression-language/6.0/[Expression Language 6.0] |Major update |link:{url-prefix}/docs/latest/reference/feature/expressionLanguage-6.0.html[expressionLanguage-6.0] +| link:https://jakarta.ee/specifications/pages/4.0/[Pages 4.0] |Major update | link:{url-prefix}/docs/latest/reference/feature/pages-4.0.html[pages-4.0] +| link:https://jakarta.ee/specifications/security/4.0/[Security 4.0] |Major update |link:{url-prefix}/docs/latest/reference/feature/appSecurity-6.0.html[appSecurity-6.0] +| link:https://jakarta.ee/specifications/authentication/3.1/[Authentication 3.1] |Minor update | link:{url-prefix}/docs/latest/reference/feature/appAuthentication-3.1.html[appAuthentication-3.1] +| link:https://jakarta.ee/specifications/concurrency/3.1/[Concurrency 3.1] |Minor update | link:{url-prefix}/docs/latest/reference/feature/concurrent-3.1.html[concurrent-3.1] +| link:https://jakarta.ee/specifications/cdi/4.1/[Context and Dependency Injection 4.1] |Minor update |link:{url-prefix}/docs/latest/reference/feature/cdi-4.1.html[cdi-4.1] +| link:https://jakarta.ee/specifications/faces/4.1/[Faces 4.1] |Minor update | link:{url-prefix}/docs/latest/reference/feature/faces-4.1.html[faces-4.1] +| link:https://jakarta.ee/specifications/persistence/3.2/[Persistence 3.2] |Minor update | link:{url-prefix}/docs/latest/reference/feature/persistence-3.2.html[persistence-3.2] +| link:https://jakarta.ee/specifications/servlet/6.1/[Servlet 6.1] |Minor update |link:{url-prefix}/docs/latest/reference/feature/servlet-6.1.html[servlet-6.1] +| link:https://jakarta.ee/specifications/bean-validation/3.1/[Validation 3.1] |Minor update | link:{url-prefix}/docs/latest/reference/feature/validation-3.1.html[validation-3.1] +| link:https://jakarta.ee/specifications/websocket/2.2/[WebSocket 2.2] |Minor update |link:{url-prefix}/docs/latest/reference/feature/websocket-2.2.html[websocket-2.2] +| link:https://jakarta.ee/specifications/debugging/2.0/[Debugging Support for Other Languages 2.0] |Unchanged |Not applicable +| link:https://jakarta.ee/specifications/enterprise-beans/4.0/[Enterprise Beans 4.0 Lite] |Unchanged |link:{url-prefix}/docs/latest/reference/feature/enterpriseBeansLite-4.0.html[enterpriseBeansLite-4.0] +| link:https://jakarta.ee/specifications/tags/3.0/[Standard Tag Library 3.0] | Unchanged | link:{url-prefix}/docs/latest/reference/feature/pages-4.0.html[pages-4.0] +| link:https://jakarta.ee/specifications/transactions/2.0/[Transactions 2.0] |Unchanged |Not applicable (see link:{url-prefix}/docs/latest/reference/javadoc/liberty-jakartaee11-javadoc.html?package=allclasses-frame.html&class=jakarta/transaction/package-summary.html[Javadoc]) +|=== + +=== Jakarta EE Platform 11 +[[jakarta_ee_platform]] +[cols="4,2,3",options="header"] +|=== +| Specification |Updates |Liberty Feature Documentation + +| link:https://jakarta.ee/specifications/webprofile/11/[Jakarta EE Web Profile 11] |Major update |See previous <> +| link:https://jakarta.ee/specifications/authorization/3.0/[Authorization 3.0] |Major update | link:{url-prefix}/docs/latest/reference/feature/appAuthorization-3.0.html[appAuthorization-3.0] +| link:https://jakarta.ee/specifications/activation/2.1/[Activation 2.1] |Unchanged |link:{url-prefix}/docs/latest/reference/feature/mail-2.1.html[mail-2.1] +| link:https://jakarta.ee/specifications/batch/2.1/[Batch 2.1] |Unchanged | link:{url-prefix}/docs/latest/reference/feature/batch-2.1.html[batch-2.1] +| link:https://jakarta.ee/specifications/connectors/2.1/[Connectors 2.1] |Unchanged | link:{url-prefix}/docs/latest/reference/feature/connectors-2.1.html[connectors-2.1] +| link:https://jakarta.ee/specifications/enterprise-beans/4.0/[Enterprise Beans 4.0] |Unchanged |link:{url-prefix}/docs/latest/reference/feature/enterpriseBeans-4.0.html[enterpriseBeans-4.0] +| link:https://jakarta.ee/specifications/mail/2.1/[Mail 2.1] |Unchanged |link:{url-prefix}/docs/latest/reference/feature/mail-2.1.html[mail-2.1] +| link:https://jakarta.ee/specifications/messaging/3.1/[Messaging 3.1] |Unchanged | link:{url-prefix}/docs/latest/reference/feature/messaging-3.1.html[messaging-3.1] +|=== + +NOTE: Enterprise Beans 4.0 is unchanged, but the optional EJB 2.x function is no longer enabled when the enterpriseBeans-4.0 feature is configured with other Jakarta EE 11 features. Users who want to use EJB 2.x APIs must also add the enterpriseBeansHome-4.0 feature. + +Liberty は、Jakarta EE 11 Web Profile (link:{url-prefix}/docs/latest/reference/feature/webProfile-11.0.html[webProfile-11.0]) と Jakarta EE 11 Platform (link:{url-prefix}/docs/latest/reference/feature/jakartaee-11.0.html[jakartaee-11.0]) に含まれるすべてのコンポーネント仕様を実行するための convenience feature を提供します。これらの convenience feature により、それぞれの仕様に含まれるすべての API を使用してアプリケーションを迅速に開発できます。アプリケーション・クライアントで Jakarta EE 11 機能を使用する場合は、link:{url-prefix}/docs/latest/reference/feature/jakartaeeClient-11.0.html[jakartaeeClient-11.0] Liberty feature を使用します。 + +Jakarta EE Platform 11 の機能を有効にするには、`server.xml` ファイルに `jakartaee-11.0` feature を追加します。 + +[source,xml] +---- + + jakartaee-11.0 + +---- + +または、Jakarta EE Web Profile 11 の機能を有効にするには、`server.xml` ファイルに `webProfile-11.0` feature を追加します。 + +[source,xml] +---- + + webProfile-11.0 + +---- + +Core Profile 用の convenience feature は存在しませんが、`server.xml` ファイルに以下の feature を追加することで同等の構成を有効にできます。 + +[source,xml] +---- + + jsonb-3.0 + jsonp-2.1 + cdi-4.1 + restfulWS-4.0 + +---- + +Application Client Container で Jakarta EE 11 機能を実行するには、`client.xml` ファイルに以下のエントリーを追加します。 + +[source,xml] +---- + + jakartaeeClient-11.0 + +---- + +*詳細については、以下を参照して下さい*: + +* link:{url-prefix}/docs/latest/reference/diff/jakarta-ee11-diff.html[Jakarta EE 11 と 10 の違い] +* link:https://jakarta.ee/specifications/platform/11/[Jakarta EE Platform 11]、link:https://jakarta.ee/specifications/webprofile/11/[Jakarta EE Web Profile 11]、および link:https://jakarta.ee/specifications/coreprofile/11/[Jakarta EE Core Profile 11] の仕様 +* link:{url-prefix}/docs/latest/reference/javadoc/liberty-jakartaee11-javadoc.html[Jakarta EE 11 Javadoc] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33154 +// Contact/Reviewer: anjumfatima90 +// // // // // // // // +[#springboot] +== Spring Boot 4.0 +Open Liberty は現在、Spring Boot 1.5.x、2.x、および 3.x アプリケーションの実行をサポートしています。新しい `springBoot-4.0` feature の導入により、ユーザーは Spring Boot 4.x アプリケーションもデプロイできるようになりました。Liberty はこれまで一貫して `WAR` ファイルとしてパッケージ化された Spring Boot アプリケーションをサポートしてきましたが、この機能強化により、Spring Boot 4.x アプリケーションでは `JAR` と `WAR` の両方の形式がサポートされます。 + +`springBoot-4.0` feature は、Open Liberty 上で Spring Boot 4.x アプリケーションを実行するための完全なサポートに加えて、コンテナ化されたアプリケーションをビルドする際にアプリケーションを thin 化する機能も提供します。 + +この機能を使用するには、Java 17 以降で実行し、Jakarta EE 11 機能を有効にしている必要があります。アプリケーションがサーブレットを使用する場合は、`servlet-6.1` を使用するように構成する必要があります。サーバーを構成するには、`server.xml` ファイルに以下の feature を含めます。 + +[source, xml] +---- + + springBoot-4.0 + servlet-6.1 + +---- + +Spring Boot アプリケーションをデプロイするための `server.xml` 構成は、以前の Liberty Spring Boot バージョンで使用されていたものと同じアプローチに従います。 + +[source, xml] +---- + +---- + +以前のバージョンと同様に、Spring Boot アプリケーション JAR は `/dropins/spring` フォルダーに配置することでデプロイできます。このデプロイ方法を使用する場合、`server.xml` ファイル内の `springBootApplication` 構成は省略できます。 + +// DO NOT MODIFY THIS LINE. + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/34374 +// Contact/Reviewer: rangaran +// // // // // // // // +[#ssl] +== TLS/SSL 暗号サポートの更新 +Liberty は現在、SSL 構成に JDK の有効な暗号リストを使用します。SSL 構成の `securityLevel` 属性は、もはや使用されません。さらに、SSL 構成の `enabledCiphers` 属性が更新され、より柔軟な方法で SSL 暗号をカスタマイズできるようになりました。 + +Liberty の `securityLevel` ベースの暗号カテゴリーは、もはや意味のある価値を提供しません。`MEDIUM` および `LOW` カテゴリーには、残っている暗号がありません。 + +`enabledCiphers` 属性には現在、相互排他的な 2 つのモードがあります。(1) スペースで区切られたカスタム暗号リストを指定する、または (2) フィルター条件を指定して、有効な JDK 暗号リストから暗号スイートを追加 (+) または削除 (-) する。`enabledCiphers` に設定された値に静的エントリーと +/- エントリーの両方が含まれている場合、エラーがログに記録され、サーバーは `enabledCiphers` の値を無視して、有効な JDK 暗号リストを返します。 + +*既存の使用方法:* ユーザーが `securityLevel` を `HIGH` に設定する場合 + +[source,xml] +---- + +---- + +`securityLevel` 属性は現在無視されるため、以前の `` 構成は、ここに示す `securityLevel` 属性が構成されていない構成と同等に扱われます。 + +[source,xml] +---- + +---- + +*既存の使用方法:* ユーザーが、有効な JDK リストからすべての TLS_RSA 暗号を 1 つ (TLS_RSA_WITH_AES_128_GCM_SHA256) を除いて除外した、すべての暗号を指定する場合 + +[source,xml] +---- + +---- + +*新しい構文の例:* ワイルドカードを使用して同じロジックを実現する +[source,xml] +---- + +---- + +Transport Security の詳細については、link:{url-prefix}/docs/modules/reference/23.0.0.6/com.ibm.websphere.appserver.api.ssl_1.5-javadoc/com/ibm/websphere/ssl/Constants.html[SSL Constants Javadoc]、link:{url-prefix}/docs/modules/reference/23.0.0.6/com.ibm.websphere.appserver.api.ssl_1.5-javadoc/com/ibm/websphere/ssl/JSSEProvider.html[JSSEProvider Javadoc]、および link:{url-prefix}/docs/latest/reference/config/ssl.html[SSL Configuration Reference] を参照して下さい。 + +// DO NOT MODIFY THIS LINE. + +[#CVEs] +== このリリースにおけるセキュリティー脆弱性 (CVE) の修正 +[cols="5*"] +|=== +|CVE |CVSS Score |Vulnerability Assessment |Versions Affected |Notes + +|https://www.cve.org/CVERecord?id=CVE-2026-3621[CVE-2026-3621] +|7.5 +|Identity spoofing +|17.0.0.3-26.0.0.4 +| + +|=== +// // // // // // // // +// In the preceding section: +// If there were any CVEs addressed in this release, fill out the table. For the information, reference https://github.com/OpenLiberty/docs/blob/draft/modules/ROOT/pages/security-vulnerabilities.adoc. If it has not been updated for this release, reach out to Kristen Clarke or Michal Broz. +// Note: When linking to features, use the +// `link:{url-prefix}/docs/latest/reference/feature/someFeature-1.0.html[Some Feature 1.0]` format and +// NOT what security-vulnerabilities.adoc does (feature:someFeature-1.0[]) +// +// If there are no CVEs fixed in this release, replace the table with: +// "There are no security vulnerability fixes in Open Liberty [RELEASE_VERSION]." +// // // // // // // // +過去のセキュリティー脆弱性修正の一覧については、link:{url-prefix}/docs/latest/security-vulnerabilities.html[Security vulnerability (CVE) list] を参照して下さい。 + + +[#bugs] +== このリリースで修正された注目すべきバグ + + +バグ修正にも取り組みました。以下のセクションでは、このリリースで解決された問題の一部を紹介します。興味がある場合は、link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26005+label%3A%22release+bug%22[26.0.0.5 で修正されたバグの完全な一覧] をご覧下さい。 + +* link:https://github.com/OpenLiberty/open-liberty/issues/34716[Security Service を使用する feature が有効で appSecurity が無効な場合の Subject Leak (CVE-2026-3621)] +* link:https://github.com/OpenLiberty/open-liberty/issues/34664[マルチモジュール JSP アプリケーションにおける `java.lang.ClassCastException: org.apache.jasper.runtime.JspApplicationContextImpl`] +* link:https://github.com/OpenLiberty/open-liberty/pull/34657[キャッシュされた JspApplicationContext による classloading の競合を修正] +* link:https://github.com/OpenLiberty/open-liberty/issues/34642[Authorization Code Grant が使用されていない場合でも oauthProvider によって PKCE が強制される] + +// // // // // // // // +// In the preceding section: +// For this section ask either Michal Broz or Tom Evans or the #openliberty-release-blog channel for Notable bug fixes in this release. +// Present them as a list in the order as provided, linking to the issue and providing a short description of the bug and the resolution. +// If the issue on Github is missing any information, leave a comment in the issue along the lines of: +// "@[issue_owner(s)] please update the description of this `release bug` using the [bug report template](https://github.com/OpenLiberty/open-liberty/issues/new?assignees=&labels=release+bug&template=bug_report.md&title=)" +// Feel free to message the owner(s) directly as well, especially if no action has been taken by them. +// For inspiration about how to write this section look at previous blogs e.g- 20.0.0.10 or 21.0.0.12 (https://openliberty.io/blog/2021/11/26/jakarta-ee-9.1.html#bugs) +// // // // // // // // + + +== Open Liberty 26.0.0.5 を今すぐ入手 + +<> から入手できます。