Atlassian Summit 2017

Atlassian Summit 2017

The Atlassian Summit in San Jose is fast approaching! Between the excitement of the keynotes, partner day, bash, and the exhibit floor partners and decision makers, the week will be filled with opportunities for networking and education on agile and the Atlassian tool suite.

As an Atlassian Silver Solutions Partner, we’d like to take a moment to share some thoughts on what we’d like to see this year at Summit:

  • New JIRA Capabilities: JIRA has expanded greatly in functionality since 2015 and its continued growth is a testament to a strong following and user base. We’d like to learn what Atlassian is planning for JIRA 7.5 and beyond!
  • Confluence Integrations: Confluence has had limited integrations with other Atlassian tools in the past. What can we expect going forward?
  • Bamboo’s Next Steps: Where are we going with Continuous Build and Integration? What will happen with Bamboo, and will Bitbucket’s build capabilities be expanded to incorporate more CI capabilities?
  • Trello: What will the future of Trello look like, now that Atlassian has purchased the firm? How will it be incorporated into the Atlassian tool suite?
  • Future Integration Capabilities: In 2015 we got Atlassian Connect, but what does the future of the Plugin SDK look like?
  • Atlassian Cloud capabilities: Will we be able to integrate LDAP to the Cloud? And what about the ability to create our own URLs?

If you have any questions in the meantime regarding the Atlassian tool suite, visit our site and learn more about the tools and our capabilities: https://ascend.zellecloud.com/what-we-do/atlassian/.

Details on the summit and the event schedule can be found here on the Atlassian homepage.

Three of our consultants are attending this year, so look for us at the Summit!

Integrating JIRA and SSO Using CAS

Integrating JIRA and SSO Using CAS

By default, Atlassian JIRA has an internal directory, integrates with LDAP / Active Directory, and integrates with a Single Sign On (SSO) solution: Crowd. However, a growing number of administrators are looking to integrate their Atlassian solutions across their enterprise Central Authentication Service (CAS). We decided to write this blog based on the original work put together by the JASIG team: CAS Configuration. The original code repository can be found here if you’d like to build the JAR files yourself: https://github.com/apereo/java-cas-client. A more detailed account along with code snippets can be found on our blog here: https://ascend.zellecloud.com/ascend-blog.

While the JASIG team created an excellent entry, we wanted to build on its success by adding easy-to-find download links, updated XML entries, and some additional details or directories / locations. This entry includes details on integrating with JIRA 7.x running on a Linux-based server.

The five steps we are covering here include:

  1. Shutdown JIRA + Know your File Locations
  2. Copy the JAR Files
  3. Modify web.xml
  4. Modify seraph-config.xml
  5. Start JIRA

While this is meant to be an overview and will help in getting your JIRA to communicate with your CAS system, it is not meant to be a full setup of CAS, or a full JIRA configuration / set up as well. This article is for semi-advanced users and administrators. But, with that said if you have any questions as you go through it, please feel free to reach out to us: info@ascend.zellecloud.com.

Step 1: Shutdown JIRA + Know your File Locations

First, make sure JIRA is shut down.

All files discussed here will exist in the following locations (note, JIRA_INSTALL by default is set to the /opt/atlassian/jira/atlassian-jira/ directory). The list of the files to be modified / copied are below as well as their locations:

  • seraph-config.xml: JIRA_INSTALL/WEB-INF/classes
  • web.xml: JIRA_INSTALL/WEB-INF/
  • CAS Client for Java Core: JIRA_INSTALL/WEB-INF/lib (needs to be copied here)
  • CAS Client for Java Atlassian Integration (for JIRA 7): JIRA_INSTALL/WEB-INF/lib

NOTE:
You can download the updated CAS clients (v3.3) that will be used along with the Jira7 JAR files from our Bitbucket repository here (download both files): https://bitbucket.org/mbrown_ascend/jira-cas-integration/downloads/

Step 2: Copy the JAR Files

After you have downloaded the files above (CAS Client for Java Core v3.3.3 + CAS Client for Java Atlassian Integration v3.5), copy both of these JAR files both into the JIRA_INSTALL/WEB-INF/lib/ file directory.

Step 3: Modify web.xml

Open up web.xml in your favorite text editor. We used VIM for most of these modifications. Around line 374, just above the “THIS MUST BE THE LAST FILTER IN THE DEFINED CHAIN” comment, add the following code (Wherever it says to add your specific information):

Next, around line 627, there will be a filter mapping for your login, something like this:
Above the filter mapping code listed above, copy and paste the following:
You can just copy / paste this code directly. After you have finished, save the web.xml file (in the VIM editor type ESC and then “:wq”).

Step 4: Modify seraph-config.xml

Next, you must make the following modifications to the seraph-config.xml file. In your seraph-config.xml file, there should be series of parameters. This is where you will make the modifications. Look at the code below, once again any area below that states “add your CAS URL…” is what you will need to modify.

After you have finished with this modification, scroll down to around line 93, and comment out SSOSeraphAuthenticator and JIRASeraphAuthenticator lines:
Add the following to this section instead:
From there, save and close the file.

Step 5: Start JIRA

After you start JIRA instance, go to a browser and type in your JIRA URL. You will be re-directed to your CAS Client.

If you are having issues with your configuration, please reach out to us anytime! We have completed CAS configurations in multiple environments using different versions of CAS. If you have any questions about this blog or about integrating your Atlassian Tool with multiple SSOs, send us an email at info@ascend.zellecloud.com.