]
Jan Kalina moved WFLY-7082 to ELY-626:
--------------------------------------
Project: WildFly Elytron (was: WildFly)
Key: ELY-626 (was: WFLY-7082)
Component/s: Permissions
(was: Security)
Affects Version/s: (was: 11.0.0.Alpha1)
Adding simple-permission-mapper with some permission throws NPE
---------------------------------------------------------------
Key: ELY-626
URL:
https://issues.jboss.org/browse/ELY-626
Project: WildFly Elytron
Issue Type: Bug
Components: Permissions
Reporter: Ondrej Lukas
Assignee: Jan Kalina
Adding simple-permission-mapper with ChangeRoleMapperPermission or
RunAsPrincipalPermission throws NPE. In case when LoginPermission is used then it works
correctly.
{code}
/subsystem=elytron/simple-permission-mapper=SomeMapper:add(permission-mappings=[{roles=[All],permissions=[{class-name="org.wildfly.security.auth.permission.ChangeRoleMapperPermission"}]}])
{
"outcome" => "failed",
"failure-description" => {
"WFLYCTL0080: Failed services" =>
{"org.wildfly.security.permission-mapper.SomeMapper" =>
"org.jboss.msc.service.StartException in service
org.wildfly.security.permission-mapper.SomeMapper: Failed to start service
Caused by: java.lang.NullPointerException"},
"WFLYCTL0412: Required services that are not installed:" =>
["org.wildfly.security.permission-mapper.SomeMapper"],
"WFLYCTL0180: Services with missing/unavailable dependencies" =>
undefined
},
"rolled-back" => true
}
{code}
NPE occurs in server log:
{code}
ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start
service org.wildfly.security.permission-mapper.SomeMapper:
org.jboss.msc.service.StartException in service
org.wildfly.security.permission-mapper.SomeMapper: Failed to start service
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at
org.wildfly.security.permission.ByNamePermissionCollection.doAdd(ByNamePermissionCollection.java:59)
at
org.wildfly.security.permission.AbstractPermissionCollection.add(AbstractPermissionCollection.java:83)
at java.security.Permissions.add(Permissions.java:133)
at
org.wildfly.extension.elytron.PermissionMapperDefinitions.createSimplePermissionMapper(PermissionMapperDefinitions.java:214)
at
org.wildfly.extension.elytron.PermissionMapperDefinitions.access$000(PermissionMapperDefinitions.java:67)
at
org.wildfly.extension.elytron.PermissionMapperDefinitions$2.lambda$getValueSupplier$0(PermissionMapperDefinitions.java:188)
at org.wildfly.extension.elytron.TrivialService.start(TrivialService.java:53)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
... 3 more
{code}