Apache Directory Fortress Realm

Clone this repo:
  1. 522cdb2 [maven-release-plugin] prepare for next development iteration by Shawn McKinney · 1 year, 4 months ago master
  2. de70336 [maven-release-plugin] prepare release 1.0.1 by Shawn McKinney · 1 year, 4 months ago 1.0.1
  3. dd62600 1.0.1 release preps by Shawn McKinney · 1 year, 4 months ago
  4. 048e7cd FC-170 - update to use non-static config by Shawn McKinney · 1 year, 7 months ago
  5. 3c12422 [maven-release-plugin] prepare for next development iteration by Shawn McKinney · 1 year, 7 months ago

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

README for Apache Fortress Realm

  • Version 1.0.1

Table of Contents

  • Document Overview
  • Tips for first-time users.
  • SECTION 1. Prerequisites.
  • SECTION 2. Download & Install.
  • SECTION 3. Instructions for Application Usage

Document Overview

This document contains instructions to download and install the Apache Fortress Realm. SECTION 3 contains steps to get it working with Apache Tomcat.


Tips for first-time users


SECTION 1. Prerequisites

Minimum hardware requirements:

  • 2 Cores
  • 4GB RAM

Minimum software requirements:

  • Java SDK 7++
  • git
  • Apache Maven3++
  • Apache Fortress Core Download & Install in FORTRESS_CORE_HOME package README.md.

Everything else covered in steps that follow. Tested on Debian, Centos & Windows machines.


SECTION 2. Download & Install

  1. Build the source.

a. from git:

git clone --branch 1.0.1 https://git-wip-us.apache.org/repos/asf/directory-fortress-realm.git
cd directory-fortress-realm
mvn clean install

b. or download package:

wget http://www.apache.org/dist/directory/fortress/dist/1.0.1/fortress-realm-1.0.1-source-release.zip
unzip fortress-realm-1.0.1-source-release.zip
cd fortress-realm-1.0.1
mvn clean install
  1. Now build the javadoc:
mvn javadoc:javadoc

If using java 8, add this param to the pom.xml:

<plugin>
   ...
   <artifactId>maven-javadoc-plugin</artifactId>
   <configuration>
       <additionalparam>-Xdoclint:none</additionalparam>
       ...
   </configuration>
</plugin>
  1. View the generated document here: ./target/site/apidocs/overview-summary.html.

SECTION 3. Instructions for Application Usage

There are two options for web app usage of the fortress realm:

  • Option 1 requires web apps to be dependent on the fortress realm libs but enables usage of the fortress RBAC programmatic authZ apis. It allows multiple realms, each of a different type and version, to be enabled within a single Tomcat instance.

  • Option 2 frees the web app from entanglement with fortress libs, which is easier to manage, but doesn't allow fortress api usage. It limits to a single realm instance, enabled globally, which might not agree with multitenant requirements.

Table of Options

Realm TypeIs Global Security?Is Declarative?Is RBAC APIs?Multiple Realms Supported?Fortress Dependencies?
Option 1NoYesYesYesYes
Option 2YesYesNoNoNo

Option 1. For Single Web Context

enable Java EE security for a single web app running under Tomcat

Apache Fortress Realm System Architecture


Option 2. For Global Security

enable Java EE security for all web apps running under Tomcat

Apache Fortress Realm Host System Architecture


END OF README