blob: e1f03370a4e68ee666db6facd48eb1cf736ef382 [file] [log] [blame]
<!--
* 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.
*
-->
<html>
<head>
<title>Overview of the org.openldap.fortress programming samples</title>
</head>
<body>
<p>
This package contains samples that show how the Fortress APIs can be used. The samples use JUnit
test harness.
<h3>Samples</h3>
<ol>
<li>{@link org.openldap.fortress.samples.AccessMgrSample} demonstrates {@code org.openldap.fortress.AccessMgr} APIs</li>
<li>{@link org.openldap.fortress.samples.AllSamplesJUnitTest} will execute all tests in their proper order</li>
<li>{@link org.openldap.fortress.samples.CreatePermOrgHierarchySample} demonstrates {@code org.openldap.fortress.DelegatedAdminMgr} APis to create Perm organizational unit hierarchies</li>
<li>{@link org.openldap.fortress.samples.CreatePermOrgSample} demonstrates {@code org.openldap.fortress.DelegatedAdminMgr} APis to create a Perm organizational unit node</li>
<li>{@link org.openldap.fortress.samples.CreatePermSample} demonstrates {@code org.openldap.fortress.AdminMgr} to create RBAC permissions</li>
<li>{@link org.openldap.fortress.samples.CreateRoleHierarchySample} demonstrates {@code org.openldap.fortress.AdminMgr} to create RBAC Role hierarchies</li>
<li>{@link org.openldap.fortress.samples.CreateRoleSample} demonstrates {@code org.openldap.fortress.AdminMgr} to create RBAC Roles and assign constraints</li>
<li>{@link org.openldap.fortress.samples.CreateSessionSample} demonstrates various ways to create a session using {@code org.openldap.fortress.AccessMgr} APIs</li>
<li>{@link org.openldap.fortress.samples.CreateUserOrgHierarchySample} demonstrates {@code org.openldap.fortress.DelegatedAdminMgr} APis to create User organizational unit hierarchies</li>
<li>{@link org.openldap.fortress.samples.CreateUserOrgSample} demonstrates {@code org.openldap.fortress.DelegatedAdminMgr} APis to create a User organizational unit node</li>
<li>{@link org.openldap.fortress.samples.CreateUserRoleSample} demonstrates {@code org.openldap.fortress.AdminMgr} APIs to assign Roles to Users</li>
<li>{@link org.openldap.fortress.samples.CreateUserSample} demonstrates {@code org.openldap.fortress.AdminMgr} APIs to create User object nodes</li>
</ol>
</p>
<p>
The Fortress samples can be executed by running the <b>test</b> target in the <b>build.xml</b> located in the <b>src/test</b> folder.
</p>
<p>
Over time more samples will be added. The build.xml in the src/test folder contains targets to compile and run these samples, or they may
be executed directly within an IDE.
</p>
<p>
<h2>What can Fortress SDK do?</h2>
Contained within this SDK are APIs and utilities to perform authentication, authorization, administration audit and password policies.
The most important package in this system is <b>org.openldap.fortress</b> which contains all of the public APIs that need to be called by outside programs.
<h2>What technologies are used?</h2>
<p>
Fortress SDK runs on any platform that supports Java technology and LDAP v3 protocols. Functionality that extends beyond
LDAP v3 is provided via <a href="http://openldap.org/">OpenLDAP</a> specific features. In other words Fortress was optimized to run on OpenLDAP.
</p>
<h2>What are the conditions of use?</h2>
<p>
This software development kit is open source, thus free to use and distribute via the <a href="http://en.wikipedia.org/wiki/BSD_licenses">New BSD License</a>.
It was developed and tested on open systems like <a href="http://www.ubuntu.com/">Ubuntu</a> and <a href="http://www.centos.org/">Centos</a> and and was helped along
by open source contributions from the following:
<ol>
<li><a href="http://www.openldap.org/project/">The OpenLDAP Project</a></li>
<li><a href="http://www.apache.org/">The Apache Software Foundation</a></li>
<li><a href="http://www.eigenbase.org/">The Eigenbase Project</a></li>
</ol>
</p>
<p>
Check out the <b>org.openldap.fortress.samples</b> in the test package for how to use these APIs within Java programs. The
<b>dist</b> target in build.xml will create a samples package in the /dist folder of this project.
</p>
</body>
</html>