blob: ef944a84026b59081f82b838540ad7369d0da15e [file] [log] [blame]
#
# This work is part of OpenLDAP Software <http://www.openldap.org/>.
#
# Copyright 1998-2014 The OpenLDAP Foundation.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted only as authorized by the OpenLDAP
# Public License.
#
# A copy of this license is available in the file LICENSE in the
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
#
___________________________________________________________________________________
###################################################################################
README for Fortress Commander Web Application Installation
RC36 (BETA RELEASE CANDIDATE)
Last updated: April 27, 2014
___________________________________________________________________________________
###################################################################################
# SECTION 1: Prerequisites
###################################################################################
1. Internet access to retrieve dependencies from online Maven repo.
NOTE: The Commander maven may run without connection to Internet iff:
- The binary dependencies are already present in M2_HOME
2. Java SDK Version 7 or beyond installed to target environment
3. Apache Ant installed.
4. Apache Maven 3 installed.
5. Fortress/OpenLDAP QUICKSTART installed to target system.
Instructions: http://www.jts.us/iamfortress/guides/README-QUICKSTART.html
Download: http://iamfortress.org/download/
6. Tomcat 7 (or suitable servlet container) installed:
http://tomcat.apache.org
7. Fortress Sentry package (a.k.a Realm) installed as the Java security provider on Tomcat server:
Instructions: http://www.jts.us/iamfortress/javadocs/api-sentry/org/openldap/sentry/tomcat/package-summary.html
Important Note: The Fortress QUICKSTART package includes prerequisite #'s 3,4,5,6 & 7 from above.
Download QUICKSTART packages from here: http://iamfortress.org/download/
___________________________________________________________________________________
###################################################################################
# SECTION 2: Important Notes about Commander Web Application
###################################################################################
1. Commander is released as Open Source and available for unrestricted use via BSD 3 clause license. (see LICENSE.txt)
- Commander dependencies are Open Source also.
2. This web app was tested using Apache Tomcat 7 but would work inside any current Java Servlet container (with changes to deploy procedure)
3. Maven 'install' target in this package builds Commander war file which deploys to Java EE servlet container.
4. This document includes instructions to Compile, Deploy, run Javadoc and Test the Commander Web application using Apache Tomcat.
5. Security Measures implemented within this application include:
- Java EE Security - Confidentiality, Authentication, Session Management
- requires HTTP Basic Auth header exchange to pass credentials used for security checks.
- Spring Security - Role-Based Access Control Interceptor
- Service-level Authorization uses Spring Security.
- To find out what Roles required to which Services, view the Spring annotations inside this file:
commander-dist-[version]/src//main/java/org/openldap/enmasse/FortressServiceImpl.java
- Fortress Sentry - Java EE security plugin for Identity, Coarse-grained Authorization, and Audit Trail
- Commander - Identity, Administrative, Compliance and Review pages
- Wicket - Controls buttons and links displayed by role and permissions
- OpenLDAP - Password Hashing, Policies.
_________________________________________________________________________________
###################################################################################
# SECTION 3: Instructions for Commander installation using Source Bundle
###################################################################################
1. Retrieve Fortress Commander source code bundle either from iamfortress.org or OpenLDAP.org.
2. Extract contents of openldap-fortress-commander.tar.gz to target env.
___________________________________________________________________________________
###################################################################################
# SECTION 4: Instructions to build Commander Web archive file
###################################################################################
1. Open a command prompt on target machine in the root folder of the commander-dist package
2. Set java home:
>export JAVA_HOME=/opt/jdk1.7.0_10
3. Set maven home:
>export M2_HOME=/usr/share/maven
4. Run maven install:
>mvn install
###################################################################################
# SECTION 5: Instructions to Deploy Commander Web application to Tomcat
###################################################################################
1. Enable Maven to communicate with Tomcat using settings.xml file.
note: a typical location for this maven configuration file is: ~/.m2/settings.xml
Add to file:
<server>
<id>local-tomcat</id>
<username>tcmanager</username>
<password>m@nager123</password>
</server>
note: If you followed the installation steps of Fortress QUICKSTART your Tomcat Manager creds would be as above.
2. Enter maven command to deploy to Tomcat:
>mvn tomcat:deploy
3. To redeploy:
>mvn tomcat:redeploy
___________________________________________________________________________________
###################################################################################
# SECTION 6: Instructions to integration test Commander Web application
###################################################################################
Note: This test case depends that the prerequisite tasks have been performed in SECTION 1.
1. Load the test security policy into LDAP using Commander test target:
>mvn test
2. Run the Selenium Web driver integration tests:
>mvn verify -DskipTests=false
___________________________________________________________________________________
###################################################################################
# SECTION 7: Instructions to create Commander javadoc (optional)
###################################################################################
The service level documentation provides descriptions for each of the Commander pages.
1. Enter the following:
$ mvn javadoc:javadoc
2. View the document output here:
openldap-fortress-commander/target/site/apidocs