Jeremiah Jordan created CASSANDRA-21670:
-------------------------------------------
Summary: Add the ability to run without using a JDK Security
Manager
Key: CASSANDRA-21670
URL: https://issues.apache.org/jira/browse/CASSANDRA-21670
Project: Apache Cassandra
Issue Type: Improvement
Reporter: Jeremiah Jordan
As of [JEP 411|https://openjdk.org/jeps/411] (JDK 17) the use of a security
manager was deprecated, and it was removed in JDK 24 See [Oracle's security
manager
documentation|https://docs.oracle.com/en/java/javase/25/security/security-manager-is-permanently-disabled.html]
In order to prepare for being able to run under JDK 25 we need to remove use of
a security manager from the server code. The main place one is used is in the
UDF sandboxing code.
In order to remove the use of the security manager, replace its functionality
with a byte code checking sandbox and extended class loader restrictions.
The new implementation will be behind a feature flag and it will keep the
existing implementation as the default for backwards compatibility and use on
older JVMs.
With the security manager removal, use of AccessControlContext is also removed.
A shared helper will be added to get the authenticated {{Subject}} for
authorization and audit logging. It will use {{Subject.current()}} on JDK 24
and later. Keeping the existing lookup on older versions.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]