[logback-dev] [JIRA] Commented: (LBCLASSIC-263) Logback Classic causes SecurityException

NC (JIRA) noreply-jira at qos.ch
Sun Sep 11 07:05:16 CEST 2011


    [ http://jira.qos.ch/browse/LBCLASSIC-263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12120#action_12120 ] 

NC commented on LBCLASSIC-263:
------------------------------

You're right, assuming a security manager would impose a performance penalty.

Altering PackagingDataCalculator as follows would avoid the penalty:

if(System.getSecurityManager() == null)
   lastExactClassLoader =callerClass.getClassLoader();
else
   lastExactClassLoader =Loader.getClassLoaderAsPrivileged(callerClass);

When not running under a security manager the ClassLoader is obtained in the usual manner, yet everything still works, out of the box, if a security manager is in place.

This provides the best of both worlds with only a simple check.  System.getSecurityManager() is not expensive.


> Logback Classic causes SecurityException
> ----------------------------------------
>
>                 Key: LBCLASSIC-263
>                 URL: http://jira.qos.ch/browse/LBCLASSIC-263
>             Project: logback-classic
>          Issue Type: Bug
>    Affects Versions: 0.9.28
>            Reporter: NC
>            Assignee: Logback dev list
>         Attachments: PackagingDataCalculator.diff
>
>
> PackagingDataCalculator invokes Class.getClassLoader().  This method throws a SecurityException when running under a security manager and that manager denies access to the ClassLoader.
> I'm submitting a PackagingDataCalculator patch which wraps the getClassLoader() invocation in a doPrivileged block.  This allows these calls to succeed when the getClassLoader RuntimePermission is granted to logback-classic.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the logback-dev mailing list