You can connect your JIRA application to Atlassian Crowd or to another JIRA server application (version 4.3 or later) for management of users and groups, and for authentication (verification of a user’s login). You will need to log in as a user with the ‘JIRA System Administrators’ global permission to access the Settings menu below.

Connecting a JIRA application to Crowd

Atlassian Crowd is an application security framework that handles authentication and authorization for your web-based applications. With Crowd you can integrate multiple web applications and user directories, with support for single sign-on (SSO) and centralized identity management. The Crowd Administration Console provides a web interface for managing directories, users and their permissions. See the Administration Guide.When to use this option: Connect to Crowd if you want to use the full Crowd functionality to manage your directories, users and groups. You can connect your Crowd server to a number of directories of all types that Crowd supports, including custom directory connectors.

To connect a JIRA application to Crowd:

  1. Go to your Crowd Administration Console and define the JIRA application to Crowd. See the Crowd documentation: Adding an Application.
  2. Choose cog > User Management
  3. Choose User Directories.
  4. Add a directory and select type ‘Atlassian Crowd‘. Enter the settings as described below.
  5. Save the directory settings.
  6. Define the directory order by clicking the blue up- and down-arrows next to each directory on the ‘User Directories‘ screen. Here is a summary of how the directory order affects the processing:
    • The order of the directories is the order in which they will be searched for users and groups.
    • Changes to users and groups will be made only in the first directory where the application has permission to make changes.

    For details, see Managing multiple directories.

  7. If required, configure JIRA to use Crowd for single sign-on (SSO) too. See the Crowd documentation: Integrating Crowd with Atlassian JIRA.

Notes:

  • If you have JIRA-Crowd-LDAP, every time user logs in (i.e. first and subsequent times), the user’s data in JIRA/Crowd will be updated from the user’s data in LDAP. This includes username, display name, email and group memberships. However for group memberships, only the following applies:
    • direct groups only (i.e. not nested groups) are synchronized from LDAP.
    • only groups that are already present in the JIRA application are synchronized, i.e. groups are not added/removed, and group hierarchies are not synchronized.

Settings in JIRA applications for the Crowd directory type

Setting Description
Name A meaningful name that will help you to identify this Crowd server amongst your list of directory servers. Examples:

  • Crowd Server
  • Example Company Crowd
Server URL The web address of your Crowd console server. Examples:

  • http://www.example.com:8095/crowd/
  • http://crowd.example.com
Application Name The name of your application, as recognized by your Crowd server. Note that you will need to define the application in Crowd too, using the Crowd administration Console. See the Crowd documentation on adding an application.
Application Password The password which the application will use when it authenticates against the Crowd framework as a client. This must be the same as the password you have registered in Crowd for this application. See the Crowd documentation on adding an application.

Crowd permissions

Setting Description
Read Only The users, groups and memberships in this directory are retrieved from Crowd and can only be modified via Crowd. You cannot modify Crowd users, groups or memberships via the application administration screens.
Read/Write The users, groups and memberships in this directory are retrieved from Crowd. When you modify a user, group or membership via the application administration screens, the changes will be applied directly to Crowd. Please ensure that the application has modification permissions for the relevant directories in Crowd. See the Crowd documentation: Specifying an Application’s Directory Permissions.

Advanced Crowd settings

Setting Description
Enable Nested Groups Enable or disable support for nested groups. Before enabling nested groups, please check to see if the user directory or directories in Crowd support nested groups. When nested groups are enabled, you can define a group as a member of another group. If you are using groups to manage permissions, you can create nested groups to allow inheritance of permissions from one group to its sub-groups.
Enable Incremental Synchronization Enable or disable incremental synchronization. Only changes since the last synchronization will be retrieved when synchronizing a directory. Note that full synchronization is always executed when restarting Fisheye.
Synchronization Interval (minutes) Synchronization is the process by which the application updates its internal store of user data to agree with the data on the directory server. The application will send a request to your directory server every x minutes, where ‘x’ is the number specified here. The default value is 60 minutes.

Connecting JIRA applications to another server

Subject to certain limitations, you can connect a number of Atlassian applications to a single JIRA application for centralized user management.

When to use this option: You can connect to a server running JIRA 4.3 or later, JIRA Software 7.0 or later, JIRA Core 7.0 or lateror JIRA Service Desk 3.0 or later. Choose this option as an alternative to Atlassian Crowd, for simple configurations with a limited number of users.

Let’s assume that you have two JIRA application servers, called for example ‘JIRA instance 1‘ and ‘JIRA instance  2‘. You want JIRA instance 2 to manage your users and groups. JIRA instance 1 will delegate user management to JIRA instance 2.

To connect JIRA instance 1 to use JIRA instance 2 for user management:

  1. Configure JIRA instance 2 to recognize JIRA instance 1:
    • Choose cog > User Management
    • Choose User Directories.
    • Add an application.
    • Enter the application name and password that JIRA instance 1 will use when accessing JIRA instance 2.
    • Enter the IP address or addresses of JIRA instance 1. Valid values are:
      • A full IP address, e.g. 192.168.10.12.
      • A wildcard IP range, using CIDR notation, e.g. 192.168.10.1/16. For more information, see the introduction to CIDR notation on Wikipedia and RFC 4632.
    • Save the new application.
  2. Configure JIRA instance 1 to delegate user management:
    • Choose cog > User Management
    • Choose User Directories.
    • Add a directory and select type ‘Atlassian JIRA‘.
    • Enter the settings as described below. When asked for the application name and password, enter the values that you defined in the settings on JIRA instance 2.
    • Save the directory settings.
    • Define the directory order by clicking the blue up- and down-arrows next to each directory on the ‘User Directories‘ screen. Here is a summary of how the directory order affects the processing:
      • The order of the directories is the order in which they will be searched for users and groups.
      • Changes to users and groups will be made only in the first directory where the application has permission to make changes.

      For details, see Managing multiple directories.

Settings for the JIRA application directory type

Setting Description
Name A meaningful name that will help you to identify this Jira server in the list of directory servers. Examples:

  • Jira Service Desk Server
  • My Company Jira
Server URL The web address of your Jira server. Examples:

  • http://www.example.com:8080
  • http://jira.example.com
Application Name The name used by your application when accessing the Jira server that acts as user manager. Note that you will also need to define your application to that Jira server, via the ‘Other Applications‘ option in the ‘Users, Groups & Roles’ section of the ‘Administration’ menu.
Application Password The password used by your application when accessing the Jira server that acts as user manager.

Permissions for the JIRA application directory type

Setting Description
Read Only The users, groups and memberships in this directory are retrieved from the Jira server that is acting as user manager. They can only be modified via that JIRA server.
Read/Write The users, groups and memberships in this directory are retrieved from the Jira server that is acting as user manager. When you modify a user, group or membership via the application administration screens, the changes will be applied directly to Jira.

Advanced Settings for the JIRA application directory type

Setting Description
Enable Nested Groups Enable or disable support for nested groups. Before enabling nested groups, please check to see if nested groups are enabled on the JIRA server that is acting as user manager. When nested groups are enabled, you can define a group as a member of another group. If you are using groups to manage permissions, you can create nested groups to allow inheritance of permissions from one group to its sub-groups.
Synchronization Interval (minutes) Synchronization is the process by which the application updates its internal store of user data to agree with the data on the directory server. The application will send a request to your directory server every x minutes, where ‘x’ is the number specified here. The default value is 60 minutes.

Diagrams of some possible configurations

Gliffy-Confluence-JIRA-Crowd

Diagram above: Confluence, JIRA and other applications connecting to Crowd for user management.

Gliffy-JIRA-To-JIRA

Diagram above: One JIRA site connecting to another for user management. JIRA site 2 does the user management, storing the user data in its internal directory.

Gliffy-Apps-To-JIRA-LDAP

Diagram above: A number of applications connecting to JIRA (site 2) for user management, with JIRA in turn connecting to an LDAP server.