It was discovered that the ElytronManagedThread in Wildfly’s Elytron subsystem stores a SecurityIdentity to run the thread with that security identity. As these threads do not necessarily terminate if the ‘keep alive’ time has not expired, this could allow a shared thread to use the wrong security identity when executing.