Quality Outreach Heads-up – JDK 20: JMX Connections Use an ObjectInputFilter by Default

原文はこちら。
The original article was written by David Delabassee (DevRel – Java Platform Group at Oracle).
https://inside.java/2023/02/20/quality-heads-up/

OpenJDK Quality Groupは、リリースの全体的な品質向上の手段としてOpenJDK Early Accessビルドを使ってのFOSSプロジェクトのテストを推進しています。

Quality Outreach
https://wiki.openjdk.java.net/display/quality/Quality+Outreach

このHeads upは、関係するプロジェクトに送られる定期的なコミュニケーションの一部です。

JDK 20 Release Candidate and Deprecation
https://mail.openjdk.org/pipermail/quality-discuss/2023-February/001111.html

このプログラムの詳細と参加方法については、上記wikiをご覧ください。

JDK 20 – JMX Connections Use an ObjectInputFilter by Default

デフォルトのJMXエージェントでは、RMI接続でObjectInputFilterを設定するようになります。これはサーバーがデシリアライズする型を制限するためです。

ObjectInputFilter (Java SE 19 & JDK 19)
https://docs.oracle.com/en/java/javase/19/docs/api/java.base/java/io/ObjectInputFilter.html
https://docs.oracle.com/javase/jp/19/docs/api/java.base/java/io/ObjectInputFilter.html

この設定によってJDKのMBeansの通常の利用に影響することはないはずです。プラットフォームのMBeanServerに自身のMBeansを登録するアプリケーションの場合、パラメータとしてカスタムMBeansを受け入れる任意の型をサポートするようにシリアライズフィルタを拡張する必要が出てくる可能性があります。

MBeanServer (Java SE 19 & JDK 19)
https://docs.oracle.com/en/java/javase/19/docs/api/java.management/javax/management/MBeanServer.html
https://docs.oracle.com/javase/jp/19/docs/api/java.management/javax/management/MBeanServer.html

デフォルトフィルタでは既にOpenMBeansやMXBeansが利用する全ての型に対応しています。

シリアライゼーションフィルターパターンは、com.sun.management.jmxremote.serial.filter.patternというプロパティを使用し、JDK/conf/management/management.propertiesに設定します。

その他のJavaの型を渡す必要がある場合、以下の記述を追加して実行するとデフォルト構成をオーバーライドできます。

-Dcom.sun.management.jmxremote.serial.filter.pattern=...

Serialization FilteringとフィルターパターンフォーマットについてはCore Libraries Guideに詳細が記載されています。

Serialization Filtering
https://docs.oracle.com/en/java/javase/19/core/serialization-filtering1.html#GUID-55BABE96-3048-4A9F-A7E6-781790FF3480
https://docs.oracle.com/javase/jp/19/core/serialization-filtering1.html#GUID-55BABE96-3048-4A9F-A7E6-781790FF3480

本件の詳細は以下のBugをご覧ください。

[JDK-8283093] JMX connections should default to using an ObjectInputFilter
https://bugs.openjdk.org/browse/JDK-8283093

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中