Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-823

WildFlySecurityManager throws exception by some tests with security manager

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 7.1.0.DR6
    • 7.0.0.DR8, 7.0.0.ER4
    • Test Suite
    • None

      Description of problem:
      WildFlySecurityManager throws ExceptionInInitializerError exception by some tests with security manager.

      Affected tests found so far:

      • org.jboss.as.test.integration.batch.deployment.JobControlTestCase#testStop JBEAP-821
      • org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB20MessageSelectorTestCase#retestMessageSelectors
      • org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB20QueueTestCase#testEjb20MDB
      • org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB20TopicTestCase#testEjb20TopicMDBs
      • org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB21TestCase#testSimple21MDB
      • org.jboss.as.test.integration.ejb.pool.lifecycle.PooledEJBLifecycleTestCase#testMDB
      • org.jboss.as.test.xts.annotation.compensationScoped.CompensationScopedTestCase#shouldSeeDifferentValuesInDifferentTransactions
      • org.jboss.as.test.xts.wsat.client.ATTestCase#testWSATVoteReadOnly
      • org.jboss.as.test.xts.wsba.coordinatorcompletion.client.BACoordinatorCompletionTestCase#testWSBACoordinatorSimple

      Steps to Reproduce for MDB20QueueTestCase:

      1. ./integration-tests.sh -fae -Dmaven.test.failure.ignore=true -Dnode0=$MYTESTIP_1 -Dnode1=$MYTESTIP_2 -DfailIfNoTests=false -Dsecurity.manager -Dts.basic -Dts.noSmoke -Dtest=MDB20QueueTestCase

      Actual results:

      testEjb20MDB(org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB20QueueTestCase)  Time elapsed: 0.094 sec  <<< ERROR!
      java.lang.ExceptionInInitializerError: null
      	at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:273)
      	at org.wildfly.security.manager.WildFlySecurityManager.checkPropertyAccess(WildFlySecurityManager.java:496)
      	at java.lang.System.getProperty(System.java:717)
      	at java.lang.Integer.getInteger(Integer.java:1101)
      	at java.lang.Integer.getInteger(Integer.java:1057)
      	at org.jboss.as.test.shared.TimeoutUtil.<clinit>(TimeoutUtil.java:39)
      	at org.jboss.as.test.integration.ejb.mdb.ejb2x.MDB20QueueTestCase.testEjb20MDB(MDB20QueueTestCase.java:110)
      

            [JBEAP-823] WildFlySecurityManager throws exception by some tests with security manager

            Verified in 7.1.0.DR6

            Ondrej Kotek added a comment - Verified in 7.1.0.DR6

            JBEAP-2240 was moved to QA in DR6, moving this one as well.

            Petr Kremensky (Inactive) added a comment - JBEAP-2240 was moved to QA in DR6, moving this one as well.

            Still waiting for JBEAP-2240.

            Ondrej Kotek added a comment - Still waiting for JBEAP-2240 .

            Moving from 7.0.0.GA to 7.backlog.

            Jiri Pallich added a comment - Moving from 7.0.0.GA to 7.backlog.

            Please reopen this only if it really fails once upgraded. Thanks.
            Till that time this issue should stay in Resolved state.

            Ivo Studensky added a comment - Please reopen this only if it really fails once upgraded. Thanks. Till that time this issue should stay in Resolved state.

            Jan Tymel (Inactive) added a comment - - edited

            org.jboss.as.test.integration.naming.remote.ejb.RemoteNamingEjbTestCase#testDeploymentBinding still fails in 7.0.0.CR2, since this version still uses MSC version 1.2.6.Final. (See JBEAP-2240)

            The test fails with:

            Caused by: java.security.AccessControlException: WFSM000001: Permission check failed (permission "("java.lang.RuntimePermission" "getClassLoader")" in code source "(vfs:/content/test.jar <no signer certificates>)" of "null")
            	at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:273)
            	at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:175)
            	at java.lang.ClassLoader.checkClassLoaderPermission(ClassLoader.java:1525)
            	at java.lang.Class.getClassLoader(Class.java:683)
            	at org.jboss.msc.service.ServiceControllerImpl.invokeListener(ServiceControllerImpl.java:1529)
            	at org.jboss.msc.service.ServiceControllerImpl.access$2800(ServiceControllerImpl.java:51)
            	at org.jboss.msc.service.ServiceControllerImpl$ListenerTask.run(ServiceControllerImpl.java:2099)
            	at org.jboss.msc.service.ServiceControllerImpl.commitInstallation(ServiceControllerImpl.java:265)
            	at org.jboss.msc.service.ServiceContainerImpl.install(ServiceContainerImpl.java:771)
            	at org.jboss.msc.service.ServiceTargetImpl.install(ServiceTargetImpl.java:223)
            	at org.jboss.msc.service.ServiceControllerImpl$ChildServiceTarget.install(ServiceControllerImpl.java:2401)
            	at org.jboss.msc.service.ServiceBuilderImpl.install(ServiceBuilderImpl.java:317)
            	at org.jboss.as.naming.WritableServiceBasedNamingStore.bind(WritableServiceBasedNamingStore.java:86)
            	... 82 more
            

            Jan Tymel (Inactive) added a comment - - edited org.jboss.as.test.integration.naming.remote.ejb.RemoteNamingEjbTestCase#testDeploymentBinding still fails in 7.0.0.CR2, since this version still uses MSC version 1.2.6.Final. (See JBEAP-2240 ) The test fails with: Caused by: java.security.AccessControlException: WFSM000001: Permission check failed (permission "(" java.lang.RuntimePermission " " getClassLoader ")" in code source "(vfs:/content/test.jar <no signer certificates>)" of " null " ) at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:273) at org.wildfly.security.manager.WildFlySecurityManager.checkPermission(WildFlySecurityManager.java:175) at java.lang. ClassLoader .checkClassLoaderPermission( ClassLoader .java:1525) at java.lang. Class .getClassLoader( Class .java:683) at org.jboss.msc.service.ServiceControllerImpl.invokeListener(ServiceControllerImpl.java:1529) at org.jboss.msc.service.ServiceControllerImpl.access$2800(ServiceControllerImpl.java:51) at org.jboss.msc.service.ServiceControllerImpl$ListenerTask.run(ServiceControllerImpl.java:2099) at org.jboss.msc.service.ServiceControllerImpl.commitInstallation(ServiceControllerImpl.java:265) at org.jboss.msc.service.ServiceContainerImpl.install(ServiceContainerImpl.java:771) at org.jboss.msc.service.ServiceTargetImpl.install(ServiceTargetImpl.java:223) at org.jboss.msc.service.ServiceControllerImpl$ChildServiceTarget.install(ServiceControllerImpl.java:2401) at org.jboss.msc.service.ServiceBuilderImpl.install(ServiceBuilderImpl.java:317) at org.jboss.as.naming.WritableServiceBasedNamingStore.bind(WritableServiceBasedNamingStore.java:86) ... 82 more

            JndiPermission is now based in a org.wildfly.naming module instead of org.wildfly.naming.client. And the org.wildfly.naming module is the default dependency of EE deployment, hence it does not need any explicit dependency in meta-inf on it.

            Ivo Studensky added a comment - JndiPermission is now based in a org.wildfly.naming module instead of org.wildfly.naming.client. And the org.wildfly.naming module is the default dependency of EE deployment, hence it does not need any explicit dependency in meta-inf on it.

            Putting this on hold since JBEAP-2240 should resolve missing RuntimePermission("getClassLoader") issue. The missing dependency on naming module should be added anyway.

            Jan Tymel (Inactive) added a comment - Putting this on hold since JBEAP-2240 should resolve missing RuntimePermission("getClassLoader") issue. The missing dependency on naming module should be added anyway.

            To fix test:
            add dependency: org.wildfly.naming.client
            add new RuntimePermission("getClassLoader") to permissions.xml

            Hynek Švábek (Inactive) added a comment - To fix test: add dependency: org.wildfly.naming.client add new RuntimePermission("getClassLoader") to permissions.xml

            okotek@redhat.com JndiPermission issue is covered by JBEAP-2275. It is not possible to depend on a private module.

            Ivo Studensky added a comment - okotek@redhat.com JndiPermission issue is covered by JBEAP-2275 . It is not possible to depend on a private module.

              istudens@redhat.com Ivo Studensky
              mkopecky@redhat.com Marek Kopecky
              Ondrej Kotek Ondrej Kotek
              Ondrej Kotek Ondrej Kotek
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: