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
- 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
. - 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. 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:
- Log in to the Crowd Administration Console and navigate to Applications > Add Application.
- Complete the 'Add Application' wizard for the Jive Forums application. See the instructions. 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
.
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/
- Replace the XFire libraries in your Jive Forums installation with the later version shipped with Crowd:
- Remove all
xfire*.jar
files from yourJIVEFORUMS/WEB-INF/lib
folder. Copy the XFire libraries from Crowd:
Copy From
Copy To
CROWD/client/xfire*.jar
JIVEFORUMS/WEB-INF/lib/
- Remove all
- 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. 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:
In your
jiveHome
directory, edit a file namedjive_startup.xml
. Modify the<setup>
node to befalse
:<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.
- Restart Jive Forums so that it picks up the changes.
- View the Jive Forums site with a web browser - usually under the
/jiveforums
context-root. Jive will run the "Jive Forums Setup". - In the 'Install Checklist' screen, click 'Continue' to navigate through the setup process.
- In the 'Datasource Settings' screen, re-enter your database configuration details and click 'Continue'.
- In the 'User System' screen, select 'Custom' authentication system and click 'Continue':
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
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.- In the 'Email Settings' screen, re-enter your email configuration details and click 'Continue'.
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.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
- Using the Application Browser
- Adding an Application
- Integrating Crowd with Atlassian Bamboo
- Integrating Crowd with Atlassian Confluence
- Integrating Crowd with Atlassian CrowdID
- Integrating Crowd with Atlassian Crucible
- Integrating Crowd with Atlassian FishEye
- Integrating Crowd with Atlassian Jira
- Integrating Crowd with Atlassian Bitbucket
- Integrating Crowd with Acegi Security
- Integrating Crowd with Jive Forums
- Integrating Crowd with Spring Security
- Integrating Crowd with a Custom Application
- Configuring the Google Apps Connector
- Mapping a Directory to an Application
- Effective memberships with multiple directories
- Specifying an Application's Address or Hostname
- Testing a User's Login to an Application
- Enforcing Lower-Case Usernames and Groups for an Application
- Managing an Application's Session
- Deleting or Deactivating an Application
- Overview of SSO
- Configuring Options for an Application
- Disabling the OpenID client app