JSESSION cookie SECURE,HTTPOnly flags

Keerthy Mamidi October 3, 2017

Hi,

We have a JIRA instance installed on AWS host, setup behind proxy server(SSL enabled).

Now for security protocols, we've configured Tomcat to enable SECURE and HTTPOnly flags. 

But from the browser end, when we load JIRA pages we are only able to see the sent JSession cookie, but not the set-cookie in response headers(hence no secure/httponly flags seen).

Could anyone please suggest how we could get the flags to show up on browser?

Thanks

1 answer

1 accepted

3 votes
Answer accepted
Andy Heinzer
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
October 4, 2017

Could you share with us your JIRAINSTALL/conf/server.xml configuration?  I'm just interested in seeing your specific connectors as to how the Tomcat site is being served up.

I suspect that if you have set the scheme parameter to http for that connector and in turn that connector is used to get SSL traffic from the load balancer, that this would actually be an incorrect setting since ultimately the site is being accessed over SSL via the load balancer.

There is some more details on why you might not be seeing these cookies in this related Bamboo KB.  From that KB:

If the HttpOnly attribute is set on a cookie, then the cookie’s value cannot be read or set by client-side JavaScript.

I realize your concern is in regards to Jira, but both Jira and Bamboo utilize a Tomcat instance in a similar way.

I suspect your connector config will need to look something like this:

  <Connector 
    port="8443"
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    maxThreads="150"
    minSpareThreads="25"
    connectionTimeout="20000"
    enableLookups="false"
    maxHttpHeaderSize="8192"
    useBodyEncodingForURI="true"
    disableUploadTimeout="true"
    bindOnInit="false"
    
    secure="true"
    proxyName="jira.example.com"
    proxyPort="443"
    scheme="https"
/>
Keerthy Mamidi October 6, 2017

Thanks for the reply Andrew. 'scheme' in server.xml is set to https and connector configuration is similar to what you've suggested.

We were able to dig out the issue though - we are using AWS load balancer and the Cookie persistence(application cookie stickiness) was not enabled in it. Hence the missing session cookies. 

This once enabled, got the cookies and flags as expected in the browser.

Andy Heinzer
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
October 6, 2017

Awesome, glad to hear you found a solution.  Thanks for sharing with us how you fixed it.

Suggest an answer

Log in or Sign up to answer