back to all blogsすべてのブログ投稿を表示

Open Liberty 22.0.0.13では、CVEやその他の重要なバグ修正とともに、FFDCの最大使用期間を設定することが可能です。

image of author image of author
Michal Broz and 浅田 かおり (翻訳) 2023年2月13日
他言語版へのリンク: English ,

Open Liberty 22.0.0.13 では、FFDC ログファイルが設定された期間に達した後、自動的に消去する機能が提供されます。このリリースでは、gRPC と gRPC クライアントの CVE に対処した 2 つのバグを含む、多くの重要なバグ修正も提供されます。 gRPC と WebSocket のトピックをカバーする 2 つの新しいガイドも、私たちの広範なガイドのリストに加わっています。 Jakarta EE 10、MicroProfile 6、InstantOn など、私たちが現在進行中の機能や特徴に興味がある場合は、最近の ベータ版ブログ記事 をご覧ください。

Open Liberty 22.0.0.13 の場合:

ランタイムに追加された新機能と合わせて、前回のリリース以降の新しいガイドと更新されたガイドも行いました。

22.0.0.13で修正されたバグの一覧を見ることができます。 .

Open Liberty GA の過去のリリースブログ記事をチェックしてください。

22.0.0.13 を使用してアプリを実行する

Mavenを使う時には下記の設定を使ってください。

<dependency>
    <groupId>io.openliberty</groupId>
    <artifactId>openliberty-runtime</artifactId>
    <version>22.0.0.13</version>
    <type>zip</type>
</dependency>

Gradle:の場合は、下記の設定を使ってください。

dependencies {
    libertyRuntime group: 'io.openliberty', name: 'openliberty-runtime', version: '[22.0.0.13,)'
}

Dockerを使っているときは、下記のイメージを使ってください。

FROM open-liberty

または、Open Libertyのダウンロード・ページからダウンロードしてください。

Ask a question on Stack Overflow

最大FFDC期間の設定

Open Libertyは、First Failure Data Capture(FFDC)機能を提供し、不具合が発生するまでのイベントや条件についての情報を即座に収集することができます。 特定のシナリオでは、FFDCディレクトリのファイル数が非常に大きくなることがあります。これまで、Open Liberty は 500 を超える FFDC ファイルを自動的に消去しており、この値は設定することができませんでした。このリリースでは、FFDC ログファイルが設定された期間に達すると自動的に消去される新しい機能が導入されています。この年齢は、新しい設定属性 maxFfdcAge で指定できます。

maxFfdcAge は、FFDCファイルが削除される前に期待される最大期間です。毎日午前0時になると、設定された最大期間に達した FFDC ファイルは削除されます。正の整数の後に、日 (d)、時間 (h)、分 (m) のいずれかの時間単位を指定します。例えば、2日を指定する場合は 2d となります。1つのエントリに複数の値を含めることができる。例えば、2d6h は 2 日と 6 時間と同じ意味です。

server.xml の設定例です。

<server>
    <logging maxFfdcAge="2d"/>
</server>

このリリースにおけるセキュリティ脆弱性 (CVE) の修正

CVE CVSSスコア 脆弱性評価 影響を受けるバージョン ノート

CVE-2022-3509

5.7

Denial of service

21.0.0.2 - 22.0.0.12

grpc-1.0grpcClient-1.0 フィーチャーに影響あり

CVE-2022-3171

5.7

Denial of service

21.0.0.2 - 22.0.0.12

grpc-1.0grpcClient-1.0 フィーチャーに影響あり

過去のセキュリティ脆弱性の修正のリストについては、Security vulnerability (CVE) listを参照してください。

主なバグ修正

以下のセクションでは、このリリースで修正したバグの一部について説明します。興味がある場合はfull list of bugs fixed in 22.0.0.13を参照してください。

  • NullPointerException in InstallFeatureAction for .esa files

    featureUtility コマンドに導入されたバグにより、拡張子 .esa で示される Enterprise Subsystem Archive (ESA) パッケージを使用して機能をインストールしようとすると、NullPointerException が発生

    java.lang.NullPointerException
            at com.ibm.ws.install.internal.InstallUtils.getFeatureName(InstallUtils.java:794)
            at com.ibm.ws.install.featureUtility.cli.InstallFeatureAction.esaInstallInit(InstallFeatureAction.java:188)
            ....

    この問題は解決され、ESA 機能をインストールするために ./featureUtility installFeature x.esa を起動しても、NPEは発生しません。

  • [HTTP/2ストリームが例外で終了したときに、断続的にサーバーの停止に失敗する [HTTP/2ストリームが例外で終了したときに、断続的にサーバーの停止に失敗する]

    HTTP/2接続で例外が発生すると、スレッドがハングアップする問題が断続的に発生することがあります。この結果、サーバー停止時にquiesce警告が発行されます。

    この問題は解決され、HTTP/2のストリームと接続、および管理するスレッドは、例外状態でもエラーなしで停止するようになりました。

  • LibertyのデフォルトのHttpAuthenticationMechanismsは、HttpMessageContext.responseUnauthorizedを呼び出さない

    HttpMessageContextWrapperresponseUnauthorized メソッドをオーバーライドする必要があります。バグのため、Liberty の HttpAuthenticationMechanismsHttpMessageContext.responseUnauthorized を呼び出さないので、ユーザーが例えばヘッダーを追加してレスポンスをエンリッチ化することができませんでした。

    この問題は解決され、デフォルトの HttpAuthenticationMechanisms は認証されていないリクエストに対して HttpMessageContext.responseUnauthorized を適切に呼び出すようになりました。

  • JspFactory.getDefaultFactory().getEngineInfo().getSpecificationVersion()不正なバージョンを返す

    Pages (旧 JSP) アプリケーションが JspFactory.getDefaultFactory().getEngineInfo().getSpecificationVersion() を呼び出すと、間違ったバージョンが返されることがあります。この値は、正しい仕様のバージョンではなく、2.1 を返すようにコード化されています。

    この問題は解決され、正しいバージョンが返されるようになりました。 例えば、jsp-2.22.2 を返し、pages-3.03.0 を返します。

  • OidcClientImplがSecurityServiceへの依存関係を正しく宣言していない

    フォームベースのログアウトURLである ibm_security_logout へのトラフィックを遮断する ServletFilter から request.logout() を呼び出すと、以下のNPEが発生する可能性があります。:

java.lang.NullPointerException
Stack Dump = java.lang.NullPointerException
        at com.ibm.ws.security.openidconnect.client.internal.OidcClientImpl.authenticateSubject(OidcClientImpl.java:749)
        at com.ibm.ws.security.openidconnect.client.internal.OidcClientImpl.handleOidcCookie(OidcClientImpl.java:722)
        at com.ibm.ws.security.openidconnect.client.internal.OidcClientImpl.logout(OidcClientImpl.java:663)
        at com.ibm.ws.webcontainer.security.AuthenticateApi.logoutUnprotectedResourceServiceRef(AuthenticateApi.java:244)
        at com.ibm.ws.webcontainer.security.AuthenticateApi.logout(AuthenticateApi.java:189)
        at com.ibm.ws.webcontainer.security.AuthenticateApi.logoutServlet30(AuthenticateApi.java:627)
        at com.ibm.ws.webcontainer.security.WebAppSecurityCollaboratorImpl.logout(WebAppSecurityCollaboratorImpl.java:1212)
        at com.ibm.ws.webcontainer.srt.SRTServletRequest.logout(SRTServletRequest.java:3956)
        at javax.servlet.http.HttpServletRequestWrapper.logout(HttpServletRequestWrapper.java:376)
        at com.ibm.bpm.servlet.filters.GenericSecurityServletFilter.doFilter(GenericSecurityServletFilter.java:327)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)

+ この問題は、 OidcClientImpl dependent on SecurityService を宣言することで解決され、NPE は発生しなくなりました。

前回のリリース以降の新しいガイドと更新されたガイド

Open Libertyの特徴や機能が増え続ける中、できるだけ簡単に導入できるように、それらのトピックに関するopenliberty.ioへの新しいガイドを追加しています。既存のガイドも、報告されたバグや問題に対処し、内容を最新に保ち、トピックの内容を拡張するために更新されます。

今すぐOpen Liberty 22.0.0.13を入手する

下記のリンク Maven, Gradle, Docker から入手可能です。