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

Elytron AuthenticationConfiguration leaks between EJB client calls

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • 7.1.0.CR1
    • 7.1.0.ER3
    • EJB, Remoting, Security
    • None
    • Hide

      Reproducer test code is available here: https://github.com/kwart/wildfly/blob/JBEAP-12410-reproducer/testsuite/integration/manualmode/src/test/java/org/wildfly/test/manual/elytron/seccontext/SaslConfigLeaksTestCase.java

      Full steps to reproduce the issue:

      git clone -b JBEAP-12410-reproducer https://github.com/kwart/wildfly.git
      cd wildfly
      mvn clean install -DskipTests -Dcheckstyle.skip -Denforcer.skip
      cd testsuite/integration/manualmode
      mvn clean test -Dcheckstyle.skip -Dcheckstyle.skip -Denforcer.skip -DtestLogToFile=false -Dtest=SaslConfigLeaksTestCase
      

      The testcase contains 2 tests (test1, test2) each in 2 variants (+ test1WithReload,test2WithReload). The *WithReload test methods are passing - they reload server1 at some point. The test methods without reload fail.

      Show
      Reproducer test code is available here: https://github.com/kwart/wildfly/blob/JBEAP-12410-reproducer/testsuite/integration/manualmode/src/test/java/org/wildfly/test/manual/elytron/seccontext/SaslConfigLeaksTestCase.java Full steps to reproduce the issue: git clone -b JBEAP-12410-reproducer https: //github.com/kwart/wildfly.git cd wildfly mvn clean install -DskipTests -Dcheckstyle.skip -Denforcer.skip cd testsuite/integration/manualmode mvn clean test -Dcheckstyle.skip -Dcheckstyle.skip -Denforcer.skip -DtestLogToFile= false -Dtest=SaslConfigLeaksTestCase The testcase contains 2 tests (test1, test2) each in 2 variants (+ test1WithReload,test2WithReload). The *WithReload test methods are passing - they reload server1 at some point. The test methods without reload fail.

      Authentication (or SASL configuration?) seems to be leaking between EJB remote calls.
      It causes authentication failures in subsequent calls.

      I have following scenario:

      EJB Client  --> EntryBean on server1  --> WhoAmIBean on server2
      

      Both the EJB Client and the EntryBean use Elytron API (AuthenticationContext+AuthenticationConfiguration) to provide valid authentication configuration.

      The full scenario (including bean lookups) is repeated several times with different Elytron AuthenticationConfigurations used (always a valid one).

      When scenarios run isolated (reload server between runs) they pass. Nevertheless when they run in sequence without reloads, then some combination fails.

              fjuma1@redhat.com Farah Juma
              josef.cacek@gmail.com Josef Cacek (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: