On 4/29/21 2:44 AM, Geertjan Wielenga wrote:

Also, from the point of view of Apache NetBeans, here’s a list of our concerns with these developments:

https://blogs.apache.org/netbeans/entry/jep-411-deprecate-the-security <https://blogs.apache.org/netbeans/entry/jep-411-deprecate-the-security>

Apache NetBeans doesn't use java.lang.SecurityManager to guarantee security, but rather to gain additional insight into the JVM's behavior. Without having such insights, the IDE's user experience would be severely affected.

Are replacement APIs being designed and will they be provided for evaluation before JEP-411 is integrated?

One of the Goals [1] in JEP 411 is:

- Evaluate whether new APIs or mechanisms are needed to address specific narrow use cases for which the Security Manager has been employed, such as blocking System.exit().

Thus, it is not a goal of this JEP to design replacements; however it is a goal of the JEP to identify potential use cases that may need replacements. Those cases would be explored more and if considered important enough defined in other Enhancements or JEPs.

The next update of the JEP will include additional text about some other SM use cases.

Thanks,
Sean

[1] https://openjdk.java.net/jeps/411#Goals


Thanks,

Gj


On Thu, 29 Apr 2021 at 07:38, Peter Firmstone <peter.firmst...@zeus.net.au <mailto:peter.firmst...@zeus.net.au>> wrote:

    Which version of Java is this planned for?   Will the last version
    supporting the security manager be a long term support version, eg back
    ports of security patches and TLS technologies?

    We have our own security manager implementation and policy provider
    implementations.  Both of these are high performance and non-blocking
    and we are able to dynamically grant and revoke some permissions.
    While I acknowledge the Java policy implementation has a significant
    performance impact, due to blocking permission checks, ours is less
    than
    1%.  Our software doesn't share PermissionCollection instances among
    threads, or even have a Permissions cache, PermissionCollection's are
    generated for each permission check and discarded for garbage
    collection, the Permission object themselves are cached (after
    initialization and safe publication), as are the results of repeated
    permission checks.  We also have our own Permission implementations.

    We have tools that generate policy files with least privilege, although
    we will manually alter them with wildcards, for network connections for
    instance.

    In our software, dynamic permissions are granted after
    authentication of
    TLS connections.

    It is too early for me to tell if there are suitable replacement
    technologies available.  I can understand the motivation for reducing
    Java's software development burden, but I think this version of Java
    might be the last for us, it would certainly be good if a long term
    support version was available, perhaps indefinitely lol.

    Regards,

    Peter Firmstone
    Zeus Project Services Pty Ltd.


    On 16/04/2021 4:05 am, mark.reinh...@oracle.com
    <mailto:mark.reinh...@oracle.com> wrote:
     > https://openjdk.java.net/jeps/411 <https://openjdk.java.net/jeps/411>
     >
     >    Summary: Deprecate the Security Manager for removal in a future
     >    release. The Security Manager dates from Java 1.0. It has not
    been the
     >    primary means of securing client-side Java code for many
    years, and it
     >    has rarely been used to secure server-side code. To move Java
    forward,
     >    we intend to deprecate the Security Manager for removal in
    concert with
     >    the legacy Applet API (JEP 398).
     >
     > - Mark

Reply via email to