[ https://issues.apache.org/jira/browse/GEODE-9980?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Owen Nichols closed GEODE-9980. ------------------------------- > Startup of Locator or Server should fail fast if > geode.enableGlobalSerialFilter is enabled but fails configuration > ------------------------------------------------------------------------------------------------------------------ > > Key: GEODE-9980 > URL: https://issues.apache.org/jira/browse/GEODE-9980 > Project: Geode > Issue Type: Bug > Components: serialization > Affects Versions: 1.15.0 > Reporter: Kirk Lund > Assignee: Kirk Lund > Priority: Major > Labels: GeodeOperationAPI, blocks-1.15.0, pull-request-available > Fix For: 1.14.5, 1.15.0 > > > The following error conditions need better handling which includes handling > of all errors consistently and cause the startup of a Locator or Server to > fail if it's unable to honor the setting of > {{-Dgeode.enableGlobalSerialFilter=true}} for any reason. Currently, if > {{-Dgeode.enableGlobalSerialFilter=true}} is specified but Geode is unable to > create a global serial filter, then it will will log a warning and continue > running. A user may easily miss that log statement and believe that the JVM > is running with a properly configured serialization filter. > 1) The user is trying to secure the JVM very thoroughly and accidentally > specifies both {{-Djdk.serialFilter}} and > {{-Dgeode.enableGlobalSerialFilter}}. > 2) The user runs some non-Geode code in the same JVM that invokes > {{ObjectInputFilter.Config.setFilter(...)}} directly. > 3) The user is using a version of Java 8 prior to 8u121 (the release that > first added {{sun.misc.ObjectInputFilter}}) and specifies > {{-Dgeode.enableGlobalSerialFilter=true}}. Also, the same behavior occurs if > they do NOT specify enabling that property. > 4) {{LocatorLauncher}} or {{ServerLauncher}} is started in a JVM that has > already created at least one {{ObjectInputStream}} which will cause > {{ObjectInputFilter.Config.setFilter(...)}} to fail. > 5) {{LocatorLauncher}} or {{ServerLauncher}} is started in a Java 8 JVM that > is not based on OpenJDK (ie {{sun.misc.ObjectInputFilter}} does not exist). > 6) {{LocatorLauncher}} or {{ServerLauncher}} is started in an unforeseen > environment that causes invocation of > {{ObjectInputFilter.Config.setFilter(...)}} via Java Reflection to throw > {{IllegalAccessException}}. -- This message was sent by Atlassian Jira (v8.20.7#820007)