blob: 41f3bb2d2307a4d978620d0f48378a58d19ddd09 [file] [log] [blame]
<?xml version='1.0' encoding="iso-8859-1" ?>
<!--
~ 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.
-->
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "../../../lib/docbook/docbook-dtd/docbookx.dtd"
[
<!ENTITY preface SYSTEM "preface.xml">
<!ENTITY terminology SYSTEM "terminology.xml">
<!ENTITY overview SYSTEM "overview.xml">
<!ENTITY security-manager SYSTEM "security-manager.xml">
<!ENTITY realms SYSTEM "realms.xml">
<!ENTITY authentication SYSTEM "authentication.xml">
<!ENTITY authorization SYSTEM "authorization.xml">
<!ENTITY sessions SYSTEM "sessions.xml">
<!ENTITY cryptography SYSTEM "cryptography.xml">
<!ENTITY caching SYSTEM "caching.xml">
<!ENTITY web-support SYSTEM "web-support.xml">
<!ENTITY web-filter SYSTEM "web-filter.xml">
<!ENTITY web-taglibs SYSTEM "web-taglibs.xml">
<!ENTITY jsecurity.tld SYSTEM "jsecurity.tld.xml">
]>
<book>
<bookinfo>
<title>JSecurity Reference Documentation</title>
<releaseinfo>1.0.0</releaseinfo>
<authorgroup>
<author>
<firstname>Les</firstname>
<surname>Hazlewood</surname>
</author>
</authorgroup>
<legalnotice>
<para>
Copies of this document may be made for your own use and for
distribution to others, provided that you do not charge any
fee for such copies and further provided that each copy
contains this Copyright Notice, whether distributed in print
or electronically.
</para>
</legalnotice>
</bookinfo>
<!-- front matter -->
<toc/>
&preface;
<part id="jsecurity-quickstart">
<title>JSecurity Quickstart</title>
<partintro id="jsecurity-quickstart-intro">
<para>
This initial part of the reference documentation walks through the simplest quickstart application
so that you may become familiarized JSecurity's programming API and general concepts. While this
application is probably the absolute simplest JSecurity-enabled application that we know of,
it should make you comfortable understanding what JSecurity can do, and how it can help you create
more secure applications. The rest of the documentation will serve as your guide to help you move
from this simple example to even the most complicated enterprise applications.
</para>
<note>
<para>
The code for this quickstart application is in the <filename>samples/quickstart</filename>
directory of the source distribution.
</para>
</note>
</partintro>
</part>
<part id="jsecurity-core">
<title>JSecurity Core</title>
<partintro id="jsecurity-core-intro">
<para>
This part of the reference documentation covers
JSecurity's core architectural components that support
functionality in all environments, from
constrained Applets and cell phones to full n-tier
clustered enterprise applications.
</para>
<para>
Most important among these are the Subject and
SecurityManager components. These are then followed
by comprehensive coverage of the supporting compnents
responsiple for handling logging in, called an
<interfacename>Authenticator</interfacename>
and access control, called an
<interfacename>Authorizer</interfacename>.
</para>
<para>
</para>
<para>
Finally, the adoption of the test-driven-development (TDD)
approach to software development is certainly advocated by
the Spring team, and so coverage of Spring's support for
integration testing is covered (alongside best practices for
unit testing). The Spring team have found that the correct
use of IoC certainly does make both unit and integration
testing easier (in that the presence of setter methods and
appropriate constructors on classes makes them
easier to wire together on a test without having to set up
service locator registries and suchlike)... the chapter
dedicated solely to testing will hopefully convince you of
this as well.
</para>
<itemizedlist>
<listitem>
<para>
<xref linkend="security-manager"/>
</para>
</listitem>
<!-- <listitem>
<para><xref linkend="authentication"/></para>
</listitem>
<listitem>
<para><xref linkend="authorization"/></para>
</listitem>
<listitem>
<para><xref linkend="realms"/></para>
</listitem>
<listitem>
<para><xref linkend="sessions"/></para>
</listitem>
<listitem>
<para><xref linkend="cryptography"/></para>
</listitem> -->
</itemizedlist>
</partintro>
&security-manager;
&authentication;
&authorization;
&realms;
&sessions;
&cryptography;
</part>
<!-- <part id="jsecurity-web">
<title>Web Support</title>
<partintro id="jsecurity-web-intro">
<para>
This part of the reference documentation covers
JSecurity's web support, specifically using JSecurity in
a Servlet container for web-based applications.
</para>
<para>
The Spring Framework's own web framework,
<link linkend="mvc">Spring Web MVC</link>, is covered in
the first couple of chapters. A number of the remaining
chapters in this part of the reference documentation are
concerned with the Spring Framework's integration with
other web technologies, such as <link linkend="struts">Struts</link>
and <link linkend="jsf">JSF</link> (to name but two).
</para>
<para>
This section concludes with coverage of Spring's MVC
<link linkend="portlet">portlet framework</link>.
</para>
<itemizedlist>
<listitem>
<para><xref linkend="mvc"/></para>
</listitem>
<listitem>
<para><xref linkend="view"/></para>
</listitem>
<listitem>
<para><xref linkend="web-integration"/></para>
</listitem>
<listitem>
<para><xref linkend="portlet"/></para>
</listitem>
</itemizedlist>
</partintro>
&mvc;
&view;
&web-integration;
&portlet;
</part>
<part id="jsecurity-integration">
<title>Integration</title>
<partintro id="jsecurity-integration-intro">
<para>
This part of the reference documentation covers JSecurity's
integration with other technologies that might be
useful in application deployments.
</para>
<itemizedlist>
<listitem>
<para><xref linkend="remoting"/></para>
</listitem>
<listitem>
<para><xref linkend="ejb"/></para>
</listitem>
<listitem>
<para><xref linkend="jms"/></para>
</listitem>
<listitem>
<para><xref linkend="jmx"/></para>
</listitem>
<listitem>
<para><xref linkend="cci"/></para>
</listitem>
<listitem>
<para><xref linkend="mail"/></para>
</listitem>
<listitem>
<para><xref linkend="scheduling"/></para>
</listitem>
<listitem>
<para><xref linkend="dynamic-language"/></para>
</listitem>
<listitem>
<para><xref linkend="metadata"/></para>
</listitem>
</itemizedlist>
</partintro>
</part> -->
<!-- back matter -->
&jsecurity.tld;
</book>