For some time in the office we’ve been unable to use Mylyn with Jira due to the fact that we have to have SiteMinder SSO challenge in front of it. The Jira Connector by default doesn’t like this and so fails. I’ve had to do a few things with the Jira installation we have so that we can have a Dashboard showing the team’s logged time and the status of our CI.
So this got me to thinking there must be a way I can get this to work with my trusted friend Charles Web Proxy Debugger. So that I could ensure that the dashboard worked against our production setup I had to do two things – 1) Get my internal Jira Password set (Using Siteminder meant that passwords where externally managed) 2) Get a SiteMinder Cookie which was authenticated.
I already had a rule in Charles to show me just the call to the Jira dashboard so that I could grab the authentication Cookie and the place it in my web app on my local machine and make a call to the production Jira install to pull back all the data I wanted.
With Charles running I tried to create a connection to the internal Jira install but I kept getting the SSO login, I then placed request break point (This means Charles stops the request, and allows you to modify it before it goes back to the server) I added the SMSESSION cookie to the request and I was moving forward but again was stopped again, I added the SMSESSION and moved forward. I was able to make a full Mylyn Jira Connector connection, but I had to keep adding this SMSESSION cookie which took an age.
I thought there must be a way I can add it every request and blow me Charles had this in the rewrite section, in here I could say for this URL / Parameter modify the Header and then use regex to modify any requests to the Jira web services by adding the SMSESSION cookie.
Once I had done this I’m able to use Mylyn + Jira as normal as long as the session cookie is still active. When it’s not I’m able to go to the dashboard grab the new authentication cookie and update the rewrite rule. Now I know this sounds a lot to go through, but if I turn Auto Sync off this now gives me the ability to use contexts again against the Jira issues I have assigned.
For me the biggest benefit is being able to use contexts, and now if I need to do I can do the manual sync and then add the context to the Jira if needed so that another member of the team can pick it up and move forward with it.
To this end, yet again Charles Web Proxy Debugger is such a great utility tool.