https://issues.apache.org/bugzilla/show_bug.cgi?id=54999

            Bug ID: 54999
           Summary: JSESSIONIDSSO not re-created upon re-authentication
                    via logout() and login(username,password) in the same
                    request
           Product: Tomcat 7
           Version: 7.0.40
          Hardware: PC
                OS: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: kmash...@yahoo.com
    Classification: Unclassified

In testing I found that the JSESSIONIDSSO was not re-created upon
re-authentication via logout() and login(username,password) in the same
request.  The problem stemmed from the REQ_SSOID_NOTE that was was not reset
upon request.logout(), whereas the documentation indicates that a logout() from
any web-app should logout() from all web-apps.  When the REQ_SSOID_NOTE is not
removed upon logout(), a subsequent login(username,password) on the same
request will re-create a JSESSIONID for the current web-app but fails to
re-create a JSESSIONIDSSO since the REQ_SSO_ID_NOTE still lingers on the
request.

AuthenticatorBase.java adjustment for logout(request) that removes the
REQ_SSOID_NOTE so that a subsequent login(username,password) will work on the
same request:

    @Override
    public void logout(Request request) throws ServletException {
        register(request, request.getResponse(), null,
                null, null, null);
        request.removeNote(Constants.REQ_SSOID_NOTE);
    }

I'll upload a diff-patch against the trunk and for 7.0.40.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to