Integrating Crowd with Jive Forums

Jive Forums allows you to specify an implementation that provides authentication and authorization external to the application. This document outlines how to integrate Crowd's authenticator with Jive Forums.

Support for Jive Forums version 5.5.13 only

Crowd provides centralized authentication and single sign-on (SSO) for Jive Forums version 5.5.13 only. Jive have announced that Jive Forums has evolved into a new product, Jive Social Business Software (SBS). We have no plans to update Crowd to support later versions of Jive Forums.

Prerequisites

  1. Download and configure Crowd. Refer to the Crowd installation guide for detailed information on how to do this. We will refer to the Crowd root folder as CROWD.
  2. Install/configure Jive Forums. Refer to the relevant Jive Forums documentation for information regarding this installation process. The documentation is usually supplied with the software distribution. Do not attempt to use Crowd as the authentication system during the installation process (use the default authentication system for the installation process).

Step 1. Tell Crowd about Jive Forums

1.1 Prepare Crowd's Directory/Users for Jive Forums

The Jive Forums application will need to locate users from a directory configured in Crowd. You will need to set up a directory in Crowd for Jive. For more information on how to do this, see Adding a Directory. We will assume that the directory is called Jive Forum Directory for the rest of this document. It is possible to assign more than one directory for an application, but for the purposes of this example, we will use Jive Forum Directory to house Jive Forum users.

If you have an existing Jive Forums deployment and would like to import existing users into Crowd, use the Jive Importer tool by navigating Users > Import Users > JIVE. Select the Jive Forum Directory as the directory into which Jive Forum users will be imported. For details please see Importing Users from Jive Forums. (info) If you are going to import users into Crowd, you need to do this now before you proceed any further.

1.2 Define the Jive Forums Application in Crowd

Crowd needs to be aware that the Jive Forums application will be making authentication requests to Crowd. We need to add the Jive Forums application to Crowd and map it to the Jive Forums Directory:

  1. Log in to the Crowd Administration Console and navigate to Applications > Add Application.
  2. Complete the 'Add Application' wizard for the Jive Forums application. See the instructions. (info) The Name and Password values you specify in the 'Add Application' wizard must match the application.name and application.password that you will set in the JIVEFORUMS/WEB-INF/classes/crowd.properties file. (See Step 2 below.)

1.3 Specify which Users can Log In to Jive Forums

Once Crowd is aware of the Jive Forums application, Crowd needs to know which users can authenticate (log in) to Jive Forums via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorizations for the application. If necessary, you can adjust these settings after completing the wizard. Below are some examples.

You can either configure entire directories to authenticate or allow particular groups. In our example, we can simply allow the entire directory to authenticate:

Alternatively, we can use the Groups tab to restrict the application to only authenticate particular groups of users. For details please see Specifying which Groups can access an Application.

1.4 Specify the Address from which Jive Forums can Log In to Crowd

As part of the 'Add Application' wizard, you will set up Jive Forums's IP address. This is the address which Jive Forums will use to authenticate to Crowd. If necessary you can add a hostname, in addition to the IP address, after completing the wizard. See Specifying an Application's Address or Hostname.

Step 2. Tell Jive Forums about Crowd

2.1 Install the Crowd Client Libraries into the Jive Forums WebApp

Jive Forums may be deployed on an application server as a single WAR file or a an exploded WAR folder. For the rest of the installation process, we will assume that Jive Forums has been set up as an exploded war file. If you need Jive Forums to be installed as a single WAR file, simply expand the WAR to a directory, make the changes as described below, and zip up the directory to form the WAR file. We will refer to the root folder of the Jive Forums web-app as JIVEFORUMS.

  1. Copy the Crowd integration libraries and configuration files (this is described in the Client Configuration documentation). This is summarized below:

    Copy From

    Copy To

    CROWD/client/crowd-integration-client-X.X.X.jar

    JIVEFORUMS/WEB-INF/lib

    CROWD/client/lib/log4j-1.2.8.jar

    JIVEFORUMS/WEB-INF/lib/

    CROWD/client/lib/ehcache-1.2.3.jar

    JIVEFORUMS/WEB-INF/lib/

    CROWD/client/conf/crowd.properties

    JIVEFORUMS/WEB-INF/classes/

    CROWD/client/conf/crowd-ehcache.xml

    JIVEFORUMS/WEB-INF/classes/

  2. Replace the XFire libraries in your Jive Forums installation with the later version shipped with Crowd:
    • Remove all xfire*.jar files from your JIVEFORUMS/WEB-INF/lib folder.
    • Copy the XFire libraries from Crowd:

      Copy From

      Copy To

      CROWD/client/xfire*.jar

      JIVEFORUMS/WEB-INF/lib/

  3. Examine the JIVEFORUMS/WEB-INF/lib folder and delete any duplicate JARs. Duplicate JARs represent common libraries used by both the Crowd client and Jive Forums.
  4. Edit JIVEFORUMS/WEB-INF/classes/crowd.properties. Change the following properties:

    Key

    Value

    application.name

    jiveforums

    application.password

    set a password

    The name and password values must match those set when defining the application in Crowd (see Step 1 above).

You can read more about the crowd.properties file.

2.2 Configure Jive Forums to use Crowd's Authenticator

Crowd is now set up to provide authentication services to Jive. Now Jive needs to be set up to use Crowd's authenticator. There are a few ways of doing this. The most user-friendly method is outlined below:

  1. In your jiveHome directory, edit a file named jive_startup.xml. Modify the <setup> node to be false:

    <jive>
      <!-- When setup is false, you can access the setup tool. -->
      <setup>false</setup>
      ...
      <!-- Allow SSO login for admins -->
      <admin>
        <tryAlternativeLogin>true</tryAlternativeLogin>
      </admin>
    </jive>
    

    As the XML comment states, this lets us re-run Jive's setup.

  2. Restart Jive Forums so that it picks up the changes.
  3. View the Jive Forums site with a web browser - usually under the /jiveforums context-root. Jive will run the "Jive Forums Setup".
  4. In the 'Install Checklist' screen, click 'Continue' to navigate through the setup process.
  5. In the 'Datasource Settings' screen, re-enter your database configuration details and click 'Continue'.
  6. In the 'User System' screen, select 'Custom' authentication system and click 'Continue':
  7. You should be at the 'Custom User System' screen. Enter the following details which specify Crowd as the custom authenticator:


    UserManager implementation:

    com.atlassian.crowd.integration.jive.CrowdUserManager
    

    GroupManager implementation:
    If you would like Crowd to manage your user groups, add the following group manager:

    com.atlassian.crowd.integration.jive.CrowdGroupManager
    

    (info) You can safely leave this field empty if you do not want Crowd to manage your groups.
    AuthFactory implementation:

    com.atlassian.crowd.integration.jive.CrowdAuthFactory
    

    Click 'Continue'.
    If you have any errors at this stage, it is very likely that there is a classpath issue (eg. the Crowd client libraries aren't being properly loaded by Jive). Please read the documentation regarding Crowd Client Libraries for help identifying the problem.

  8. In the 'Email Settings' screen, re-enter your email configuration details and click 'Continue'.
  9. In the 'Admin Account Setup' screen, do not enter any details. Click 'Skip this step'.

    Warning

    The default administrator for Jive Forums is the user admin. This user will need to exist in your mapped directory (i.e. the Jive Forums Directory) in Crowd. Without this user, you will not be able to access the administration console of Jive Forums.

  10. Bounce the server and test that Crowd is authenticating users for Jive. You can do this by creating users (users) via the Crowd Administration Console and verifying that they are able to log in to Jive Forums.

    Jive Forums Documentation

    For further information regarding Jive Forums Authentication Integration, check out the Jive Forums Documentation at http://www.jivesoftware.com/builds/docs/latest/documentation/developer-guide.html#userintegration

    Check out the Jive SSO page for more details on Jive SSO Integration and corresponding use cases.

RELATED TOPICS

Crowd documentation

Last modified on May 26, 2016

Was this helpful?

Yes
No
Provide feedback about this article

In this section

Powered by Confluence and Scroll Viewport.