You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by ju...@apache.org on 2017/06/20 21:51:27 UTC
[19/51] [abbrv] [partial] jspwiki-site git commit: Site + Apidocs
Maven Publish
http://git-wip-us.apache.org/repos/asf/jspwiki-site/blob/b37788df/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.html
----------------------------------------------------------------------
diff --git a/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.html b/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.html
new file mode 100755
index 0000000..feaa0ae
--- /dev/null
+++ b/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.html
@@ -0,0 +1,1076 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_19) on Fri May 23 21:23:16 CEST 2014 -->
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<TITLE>
+AuthenticationManager (Apache JSPWiki Main War 2.10.1 API)
+</TITLE>
+
+<META NAME="date" CONTENT="2014-05-23">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AuthenticationManager (Apache JSPWiki Main War 2.10.1 API)";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AuthenticationManager.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ PREV CLASS
+ <A HREF="../../../../org/apache/wiki/auth/AuthorizationManager.html" title="class in org.apache.wiki.auth"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../index.html?org/apache/wiki/auth/AuthenticationManager.html" target="_top"><B>FRAMES</B></A>
+ <A HREF="AuthenticationManager.html" target="_top"><B>NO FRAMES</B></A>
+ <SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.apache.wiki.auth</FONT>
+<BR>
+Class AuthenticationManager</H2>
+<PRE>
+<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
+ <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.wiki.auth.AuthenticationManager</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.78"><B>AuthenticationManager</B></A><DT>extends <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL>
+</PRE>
+<map id="APIVIZ" name="APIVIZ">
+<area shape="rect" id="node1" href="AuthorizationManager.html" title="AuthorizationManager" alt="" coords="9,94,156,122"/>
+<area shape="rect" id="node2" href="AuthenticationManager.html" title="AuthenticationManager" alt="" coords="5,6,160,34"/>
+</map>
+<div id="apivizContainer" style="text-align: center;"><img src="AuthenticationManager.png" usemap="#APIVIZ" border="0"></div>
+
+<P>
+Manages authentication activities for a WikiEngine: user login, logout, and
+ credential refreshes. This class uses JAAS to determine how users log in.
+ <p>
+ The login procedure is protected in addition by a mechanism which prevents
+ a hacker to try and force-guess passwords by slowing down attempts to log in
+ into the same account. Every login attempt is recorded, and stored for a while
+ (currently ten minutes), and each login attempt during that time incurs a penalty
+ of 2^login attempts milliseconds - that is, 10 login attempts incur a login penalty of 1.024 seconds.
+ The delay is currently capped to 20 seconds.
+<P>
+
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+ <DD>2.3</DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#COOKIE_AUTHENTICATION_MODULE">COOKIE_AUTHENTICATION_MODULE</A></B></CODE>
+
+<BR>
+ The name of the built-in cookie authentication module</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#COOKIE_MODULE">COOKIE_MODULE</A></B></CODE>
+
+<BR>
+ The name of the built-in cookie assertion module</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#EMPTY_MAP">EMPTY_MAP</A></B></CODE>
+
+<BR>
+ Empty Map passed to JAAS <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#doJAASLogin(java.lang.Class, javax.security.auth.callback.CallbackHandler, java.util.Map)"><CODE>doJAASLogin(Class, CallbackHandler, Map)</CODE></A> method.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static org.apache.log4j.Logger</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#log">log</A></B></CODE>
+
+<BR>
+ </TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><? extends <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi">LoginModule</A>></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#m_loginModuleClass">m_loginModuleClass</A></B></CODE>
+
+<BR>
+ Class (of type LoginModule) to use for custom authentication.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#m_loginModuleOptions">m_loginModuleOptions</A></B></CODE>
+
+<BR>
+ Options passed to <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true#initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)" title="class or interface in javax.security.auth.spi"><CODE>LoginModule.initialize(Subject, CallbackHandler, Map, Map)</CODE></A>;
+ initialized by <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#initialize(org.apache.wiki.WikiEngine, java.util.Properties)"><CODE>initialize(WikiEngine, Properties)</CODE></A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PREFIX_LOGIN_MODULE_OPTIONS">PREFIX_LOGIN_MODULE_OPTIONS</A></B></CODE>
+
+<BR>
+ Prefix for LoginModule options key/value pairs.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_ALLOW_COOKIE_ASSERTIONS">PROP_ALLOW_COOKIE_ASSERTIONS</A></B></CODE>
+
+<BR>
+ If this jspwiki.properties property is <code>true</code>, allow cookies to be used to assert identities.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_ALLOW_COOKIE_AUTH">PROP_ALLOW_COOKIE_AUTH</A></B></CODE>
+
+<BR>
+ If this jspwiki.properties property is <code>true</code>, allow cookies to be used for authentication.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_LOGIN_MODULE">PROP_LOGIN_MODULE</A></B></CODE>
+
+<BR>
+ The <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi"><CODE>LoginModule</CODE></A> to use for custom authentication.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_LOGIN_THROTTLING">PROP_LOGIN_THROTTLING</A></B></CODE>
+
+<BR>
+ Whether logins should be throttled to limit brute-forcing attempts.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_SECURITY">PROP_SECURITY</A></B></CODE>
+
+<BR>
+ <B>Deprecated.</B> <I></I> </TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_STOREIPADDRESS">PROP_STOREIPADDRESS</A></B></CODE>
+
+<BR>
+ If this jspwiki.properties property is <code>true</code>, logs the IP address of the editor on saving.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#SECURITY_CONTAINER">SECURITY_CONTAINER</A></B></CODE>
+
+<BR>
+ <B>Deprecated.</B> <I>use <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#SECURITY_OFF"><CODE>SECURITY_OFF</CODE></A> instead</I></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#SECURITY_JAAS">SECURITY_JAAS</A></B></CODE>
+
+<BR>
+ Value specifying that the user wants to use the built-in JAAS-based system</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#SECURITY_OFF">SECURITY_OFF</A></B></CODE>
+
+<BR>
+ Value specifying that the user wants to use the container-managed security, just like in JSPWiki 2.2.</TD>
+</TR>
+</TABLE>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#AuthenticationManager()">AuthenticationManager</A></B>()</CODE>
+
+<BR>
+ </TD>
+</TR>
+</TABLE>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#addWikiEventListener(org.apache.wiki.event.WikiEventListener)">addWikiEventListener</A></B>(<A HREF="../../../../org/apache/wiki/event/WikiEventListener.html" title="interface in org.apache.wiki.event">WikiEventListener</A> listener)</CODE>
+
+<BR>
+ Registers a WikiEventListener with this instance.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#allowsCookieAssertions()">allowsCookieAssertions</A></B>()</CODE>
+
+<BR>
+ Determines whether this WikiEngine allows users to assert identities using
+ cookies instead of passwords.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#allowsCookieAuthentication()">allowsCookieAuthentication</A></B>()</CODE>
+
+<BR>
+ Determines whether this WikiEngine allows users to authenticate using
+ cookies instead of passwords.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A>></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#doJAASLogin(java.lang.Class, javax.security.auth.callback.CallbackHandler, java.util.Map)">doJAASLogin</A></B>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><? extends <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi">LoginModule</A>> clazz,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/callback/CallbackHandler.html?is-external=true" title="class or interface in javax.security.auth.callback">CallbackHandler</A> handler,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>> options)</CODE>
+
+<BR>
+ Instantiates and executes a single JAAS
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi"><CODE>LoginModule</CODE></A>, and returns a Set of
+ Principals that results from a successful login.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#findConfigFile(org.apache.wiki.WikiEngine, java.lang.String)">findConfigFile</A></B>(<A HREF="../../../../org/apache/wiki/WikiEngine.html" title="class in org.apache.wiki">WikiEngine</A> engine,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> name)</CODE>
+
+<BR>
+ Looks up and obtains a configuration file inside the WEB-INF folder of a
+ wiki webapp.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#fireEvent(int, java.security.Principal, java.lang.Object)">fireEvent</A></B>(int type,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A> target)</CODE>
+
+<BR>
+ Fires a WikiSecurityEvent of the provided type, Principal and target Object
+ to all registered listeners.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#getLoginPrincipal(java.util.Set)">getLoginPrincipal</A></B>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A>> principals)</CODE>
+
+<BR>
+ Returns the first Principal in a set that isn't a <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html" title="class in org.apache.wiki.auth.authorize"><CODE>Role</CODE></A> or
+ <A HREF="../../../../org/apache/wiki/auth/GroupPrincipal.html" title="class in org.apache.wiki.auth"><CODE>GroupPrincipal</CODE></A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#initialize(org.apache.wiki.WikiEngine, java.util.Properties)">initialize</A></B>(<A HREF="../../../../org/apache/wiki/WikiEngine.html" title="class in org.apache.wiki">WikiEngine</A> engine,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</A> props)</CODE>
+
+<BR>
+ Creates an AuthenticationManager instance for the given WikiEngine and
+ the specified set of properties.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#isContainerAuthenticated()">isContainerAuthenticated</A></B>()</CODE>
+
+<BR>
+ Returns true if this WikiEngine uses container-managed authentication.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#isRolePrincipal(java.security.Principal)">isRolePrincipal</A></B>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal)</CODE>
+
+<BR>
+ Determines whether the supplied Principal is a "role principal".</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#isUserPrincipal(java.security.Principal)">isUserPrincipal</A></B>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal)</CODE>
+
+<BR>
+ Determines whether the supplied Principal is a "user principal".</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(javax.servlet.http.HttpServletRequest)">login</A></B>(javax.servlet.http.HttpServletRequest request)</CODE>
+
+<BR>
+ Logs in the user by attempting to populate a WikiSession Subject from
+ a web servlet request by examining the request
+ for the presence of container credentials and user cookies.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(org.apache.wiki.WikiSession, javax.servlet.http.HttpServletRequest, java.lang.String, java.lang.String)">login</A></B>(<A HREF="../../../../org/apache/wiki/WikiSession.html" title="class in org.apache.wiki">WikiSession</A> session,
+ javax.servlet.http.HttpServletRequest request,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> username,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> password)</CODE>
+
+<BR>
+ Attempts to perform a WikiSession login for the given username/password
+ combination using JSPWiki's custom authentication mode.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(org.apache.wiki.WikiSession, java.lang.String, java.lang.String)">login</A></B>(<A HREF="../../../../org/apache/wiki/WikiSession.html" title="class in org.apache.wiki">WikiSession</A> session,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> username,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> password)</CODE>
+
+<BR>
+ <B>Deprecated.</B> <I>use <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(org.apache.wiki.WikiSession, javax.servlet.http.HttpServletRequest, java.lang.String, java.lang.String)"><CODE>login(WikiSession, HttpServletRequest, String, String)</CODE></A> instead</I></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#logout(javax.servlet.http.HttpServletRequest)">logout</A></B>(javax.servlet.http.HttpServletRequest request)</CODE>
+
+<BR>
+ Logs the user out by retrieving the WikiSession associated with the
+ HttpServletRequest and unbinding all of the Subject's Principals,
+ except for <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html#ALL"><CODE>Role.ALL</CODE></A>, <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html#ANONYMOUS"><CODE>Role.ANONYMOUS</CODE></A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#removeWikiEventListener(org.apache.wiki.event.WikiEventListener)">removeWikiEventListener</A></B>(<A HREF="../../../../org/apache/wiki/event/WikiEventListener.html" title="interface in org.apache.wiki.event">WikiEventListener</A> listener)</CODE>
+
+<BR>
+ Un-registers a WikiEventListener with this instance.</TD>
+</TR>
+</TABLE>
+ <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/
lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
+</TR>
+</TABLE>
+
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="COOKIE_MODULE"><!-- --></A><H3>
+COOKIE_MODULE</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.86"><B>COOKIE_MODULE</B></A></PRE>
+<DL>
+<DD>The name of the built-in cookie assertion module
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="COOKIE_AUTHENTICATION_MODULE"><!-- --></A><H3>
+COOKIE_AUTHENTICATION_MODULE</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.89"><B>COOKIE_AUTHENTICATION_MODULE</B></A></PRE>
+<DL>
+<DD>The name of the built-in cookie authentication module
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="PROP_STOREIPADDRESS"><!-- --></A><H3>
+PROP_STOREIPADDRESS</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.92"><B>PROP_STOREIPADDRESS</B></A></PRE>
+<DL>
+<DD>If this jspwiki.properties property is <code>true</code>, logs the IP address of the editor on saving.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_STOREIPADDRESS">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROP_ALLOW_COOKIE_AUTH"><!-- --></A><H3>
+PROP_ALLOW_COOKIE_AUTH</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.95"><B>PROP_ALLOW_COOKIE_AUTH</B></A></PRE>
+<DL>
+<DD>If this jspwiki.properties property is <code>true</code>, allow cookies to be used for authentication.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_ALLOW_COOKIE_AUTH">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROP_SECURITY"><!-- --></A><H3>
+PROP_SECURITY</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.105"><B>PROP_SECURITY</B></A></PRE>
+<DL>
+<DD><B>Deprecated.</B> <I></I><DD>This property determines whether we use JSPWiki authentication or not.
+ Possible values are AUTH_JAAS or AUTH_CONTAINER.
+ <p>
+ Setting this is now deprecated - we do not guarantee that it works.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_SECURITY">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="SECURITY_OFF"><!-- --></A><H3>
+SECURITY_OFF</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.108"><B>SECURITY_OFF</B></A></PRE>
+<DL>
+<DD>Value specifying that the user wants to use the container-managed security, just like in JSPWiki 2.2.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.SECURITY_OFF">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="SECURITY_JAAS"><!-- --></A><H3>
+SECURITY_JAAS</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.111"><B>SECURITY_JAAS</B></A></PRE>
+<DL>
+<DD>Value specifying that the user wants to use the built-in JAAS-based system
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.SECURITY_JAAS">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROP_LOGIN_THROTTLING"><!-- --></A><H3>
+PROP_LOGIN_THROTTLING</H3>
+<PRE>
+public static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.114"><B>PROP_LOGIN_THROTTLING</B></A></PRE>
+<DL>
+<DD>Whether logins should be throttled to limit brute-forcing attempts. Defaults to true.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_LOGIN_THROTTLING">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="log"><!-- --></A><H3>
+log</H3>
+<PRE>
+protected static final org.apache.log4j.Logger <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.116"><B>log</B></A></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="PREFIX_LOGIN_MODULE_OPTIONS"><!-- --></A><H3>
+PREFIX_LOGIN_MODULE_OPTIONS</H3>
+<PRE>
+protected static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.119"><B>PREFIX_LOGIN_MODULE_OPTIONS</B></A></PRE>
+<DL>
+<DD>Prefix for LoginModule options key/value pairs.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PREFIX_LOGIN_MODULE_OPTIONS">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROP_ALLOW_COOKIE_ASSERTIONS"><!-- --></A><H3>
+PROP_ALLOW_COOKIE_ASSERTIONS</H3>
+<PRE>
+protected static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.122"><B>PROP_ALLOW_COOKIE_ASSERTIONS</B></A></PRE>
+<DL>
+<DD>If this jspwiki.properties property is <code>true</code>, allow cookies to be used to assert identities.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_ALLOW_COOKIE_ASSERTIONS">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROP_LOGIN_MODULE"><!-- --></A><H3>
+PROP_LOGIN_MODULE</H3>
+<PRE>
+protected static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.125"><B>PROP_LOGIN_MODULE</B></A></PRE>
+<DL>
+<DD>The <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi"><CODE>LoginModule</CODE></A> to use for custom authentication.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.PROP_LOGIN_MODULE">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="EMPTY_MAP"><!-- --></A><H3>
+EMPTY_MAP</H3>
+<PRE>
+protected static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.128"><B>EMPTY_MAP</B></A></PRE>
+<DL>
+<DD>Empty Map passed to JAAS <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#doJAASLogin(java.lang.Class, javax.security.auth.callback.CallbackHandler, java.util.Map)"><CODE>doJAASLogin(Class, CallbackHandler, Map)</CODE></A> method.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="m_loginModuleClass"><!-- --></A><H3>
+m_loginModuleClass</H3>
+<PRE>
+protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><? extends <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi">LoginModule</A>> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.131"><B>m_loginModuleClass</B></A></PRE>
+<DL>
+<DD>Class (of type LoginModule) to use for custom authentication.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="m_loginModuleOptions"><!-- --></A><H3>
+m_loginModuleOptions</H3>
+<PRE>
+protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.135"><B>m_loginModuleOptions</B></A></PRE>
+<DL>
+<DD>Options passed to <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true#initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)" title="class or interface in javax.security.auth.spi"><CODE>LoginModule.initialize(Subject, CallbackHandler, Map, Map)</CODE></A>;
+ initialized by <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#initialize(org.apache.wiki.WikiEngine, java.util.Properties)"><CODE>initialize(WikiEngine, Properties)</CODE></A>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="SECURITY_CONTAINER"><!-- --></A><H3>
+SECURITY_CONTAINER</H3>
+<PRE>
+protected static final <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.142"><B>SECURITY_CONTAINER</B></A></PRE>
+<DL>
+<DD><B>Deprecated.</B> <I>use <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#SECURITY_OFF"><CODE>SECURITY_OFF</CODE></A> instead</I><DD>Just to provide compatibility with the old versions. The same
+ as SECURITY_OFF.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.wiki.auth.AuthenticationManager.SECURITY_CONTAINER">Constant Field Values</A></DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AuthenticationManager()"><!-- --></A><H3>
+AuthenticationManager</H3>
+<PRE>
+public <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.78"><B>AuthenticationManager</B></A>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="initialize(org.apache.wiki.WikiEngine, java.util.Properties)"><!-- --></A><H3>
+initialize</H3>
+<PRE>
+public void <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.178"><B>initialize</B></A>(<A HREF="../../../../org/apache/wiki/WikiEngine.html" title="class in org.apache.wiki">WikiEngine</A> engine,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</A> props)
+ throws <A HREF="../../../../org/apache/wiki/api/exceptions/WikiException.html" title="class in org.apache.wiki.api.exceptions">WikiException</A></PRE>
+<DL>
+<DD>Creates an AuthenticationManager instance for the given WikiEngine and
+ the specified set of properties. All initialization for the modules is
+ done here.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>engine</CODE> - the wiki engine<DD><CODE>props</CODE> - the properties used to initialize the wiki engine
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../org/apache/wiki/api/exceptions/WikiException.html" title="class in org.apache.wiki.api.exceptions">WikiException</A></CODE> - if the AuthenticationManager cannot be initialized</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isContainerAuthenticated()"><!-- --></A><H3>
+isContainerAuthenticated</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.226"><B>isContainerAuthenticated</B></A>()</PRE>
+<DL>
+<DD>Returns true if this WikiEngine uses container-managed authentication.
+ This method is used primarily for cosmetic purposes in the JSP tier, and
+ performs no meaningful security function per se. Delegates to
+ <A HREF="../../../../org/apache/wiki/auth/authorize/WebContainerAuthorizer.html#isContainerAuthorized()"><CODE>WebContainerAuthorizer.isContainerAuthorized()</CODE></A>,
+ if used as the external authorizer; otherwise, returns <code>false</code>.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD><code>true</code> if the wiki's authentication is managed by
+ the container, <code>false</code> otherwise</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="login(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
+login</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.280"><B>login</B></A>(javax.servlet.http.HttpServletRequest request)
+ throws <A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></PRE>
+<DL>
+<DD><p>Logs in the user by attempting to populate a WikiSession Subject from
+ a web servlet request by examining the request
+ for the presence of container credentials and user cookies. The processing
+ logic is as follows:
+ </p>
+ <ul>
+ <li>If the WikiSession had previously been unauthenticated, check to see if
+ user has subsequently authenticated. To be considered "authenticated,"
+ the request must supply one of the following (in order of preference):
+ the container <code>userPrincipal</code>, container <code>remoteUser</code>,
+ or authentication cookie. If the user is authenticated, this method fires event
+ <A HREF="../../../../org/apache/wiki/event/WikiSecurityEvent.html#LOGIN_AUTHENTICATED"><CODE>WikiSecurityEvent.LOGIN_AUTHENTICATED</CODE></A>
+ with two parameters: a Principal representing the login principal,
+ and the current WikiSession. In addition, if the authorizer is of type
+ WebContainerAuthorizer, this method iterates through the container roles returned by
+ <A HREF="../../../../org/apache/wiki/auth/authorize/WebContainerAuthorizer.html#getRoles()"><CODE>WebContainerAuthorizer.getRoles()</CODE></A>,
+ tests for membership in each one, and adds those that pass to the Subject's principal set.</li>
+ <li>If, after checking for authentication, the WikiSession is still Anonymous,
+ this method next checks to see if the user has "asserted" an identity
+ by supplying an assertion cookie. If the user is found to be asserted,
+ this method fires event <A HREF="../../../../org/apache/wiki/event/WikiSecurityEvent.html#LOGIN_ASSERTED"><CODE>WikiSecurityEvent.LOGIN_ASSERTED</CODE></A>
+ with two parameters: <code>WikiPrincipal(<em>cookievalue</em>)</code>, and
+ the current WikiSession.</li>
+ <li>If, after checking for authenticated and asserted status, the WikiSession is
+ <em>still</em> anonymous, this method fires event
+ <A HREF="../../../../org/apache/wiki/event/WikiSecurityEvent.html#LOGIN_ANONYMOUS"><CODE>WikiSecurityEvent.LOGIN_ANONYMOUS</CODE></A> with
+ two parameters: <code>WikiPrincipal(<em>remoteAddress</em>)</code>,
+ and the current WikiSession </li>
+ </ul>
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>request</CODE> - servlet request for this user
+<DT><B>Returns:</B><DD>always returns <code>true</code> (because anonymous login, at least, will always succeed)
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></CODE> - if the user cannot be logged in for any reason<DT><B>Since:</B></DT>
+ <DD>2.3</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="login(org.apache.wiki.WikiSession, java.lang.String, java.lang.String)"><!-- --></A><H3>
+login</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.357"><B>login</B></A>(<A HREF="../../../../org/apache/wiki/WikiSession.html" title="class in org.apache.wiki">WikiSession</A> session,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> username,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> password)
+ throws <A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></PRE>
+<DL>
+<DD><B>Deprecated.</B> <I>use <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(org.apache.wiki.WikiSession, javax.servlet.http.HttpServletRequest, java.lang.String, java.lang.String)"><CODE>login(WikiSession, HttpServletRequest, String, String)</CODE></A> instead</I>
+<P>
+<DD>Attempts to perform a WikiSession login for the given username/password
+ combination using JSPWiki's custom authentication mode. This method is identical to
+ <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#login(org.apache.wiki.WikiSession, java.lang.String, java.lang.String)"><CODE>login(WikiSession, String, String)</CODE></A>, except that user's HTTP request is not made available
+ to LoginModules via the <A HREF="../../../../org/apache/wiki/auth/login/HttpRequestCallback.html" title="class in org.apache.wiki.auth.login"><CODE>HttpRequestCallback</CODE></A>.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>session</CODE> - the current wiki session; may not be <code>null</code>.<DD><CODE>username</CODE> - The user name. This is a login name, not a WikiName. In
+ most cases they are the same, but in some cases, they might
+ not be.<DD><CODE>password</CODE> - the password
+<DT><B>Returns:</B><DD>true, if the username/password is valid
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></CODE> - if the Authorizer or UserManager cannot be obtained</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="login(org.apache.wiki.WikiSession, javax.servlet.http.HttpServletRequest, java.lang.String, java.lang.String)"><!-- --></A><H3>
+login</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.382"><B>login</B></A>(<A HREF="../../../../org/apache/wiki/WikiSession.html" title="class in org.apache.wiki">WikiSession</A> session,
+ javax.servlet.http.HttpServletRequest request,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> username,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> password)
+ throws <A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></PRE>
+<DL>
+<DD>Attempts to perform a WikiSession login for the given username/password
+ combination using JSPWiki's custom authentication mode. In order to log in,
+ the JAAS LoginModule supplied by the WikiEngine property <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_LOGIN_MODULE"><CODE>PROP_LOGIN_MODULE</CODE></A>
+ will be instantiated, and its
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true#initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)" title="class or interface in javax.security.auth.spi"><CODE>LoginModule.initialize(Subject, CallbackHandler, Map, Map)</CODE></A>
+ method will be invoked. By default, the <A HREF="../../../../org/apache/wiki/auth/login/UserDatabaseLoginModule.html" title="class in org.apache.wiki.auth.login"><CODE>UserDatabaseLoginModule</CODE></A>
+ class will be used. When the LoginModule's <code>initialize</code> method is invoked,
+ an options Map populated by properties keys prefixed by <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PREFIX_LOGIN_MODULE_OPTIONS"><CODE>PREFIX_LOGIN_MODULE_OPTIONS</CODE></A>
+ will be passed as a parameter.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>session</CODE> - the current wiki session; may not be <code>null</code>.<DD><CODE>request</CODE> - the user's HTTP request. This parameter may be <code>null</code>, but the configured
+ LoginModule will not have access to the HTTP request in this case.<DD><CODE>username</CODE> - The user name. This is a login name, not a WikiName. In
+ most cases they are the same, but in some cases, they might
+ not be.<DD><CODE>password</CODE> - the password
+<DT><B>Returns:</B><DD>true, if the username/password is valid
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></CODE> - if the Authorizer or UserManager cannot be obtained</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="logout(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
+logout</H3>
+<PRE>
+public void <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.457"><B>logout</B></A>(javax.servlet.http.HttpServletRequest request)</PRE>
+<DL>
+<DD>Logs the user out by retrieving the WikiSession associated with the
+ HttpServletRequest and unbinding all of the Subject's Principals,
+ except for <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html#ALL"><CODE>Role.ALL</CODE></A>, <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html#ANONYMOUS"><CODE>Role.ANONYMOUS</CODE></A>.
+ is a cheap-and-cheerful way to do it without invoking JAAS LoginModules.
+ The logout operation will also flush the JSESSIONID cookie from
+ the user's browser session, if it was set.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>request</CODE> - the current HTTP request</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="allowsCookieAssertions()"><!-- --></A><H3>
+allowsCookieAssertions</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.495"><B>allowsCookieAssertions</B></A>()</PRE>
+<DL>
+<DD>Determines whether this WikiEngine allows users to assert identities using
+ cookies instead of passwords. This is determined by inspecting
+ the WikiEngine property <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_ALLOW_COOKIE_ASSERTIONS"><CODE>PROP_ALLOW_COOKIE_ASSERTIONS</CODE></A>.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD><code>true</code> if cookies are allowed</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="allowsCookieAuthentication()"><!-- --></A><H3>
+allowsCookieAuthentication</H3>
+<PRE>
+public boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.507"><B>allowsCookieAuthentication</B></A>()</PRE>
+<DL>
+<DD>Determines whether this WikiEngine allows users to authenticate using
+ cookies instead of passwords. This is determined by inspecting
+ the WikiEngine property <A HREF="../../../../org/apache/wiki/auth/AuthenticationManager.html#PROP_ALLOW_COOKIE_AUTH"><CODE>PROP_ALLOW_COOKIE_AUTH</CODE></A>.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD><code>true</code> if cookies are allowed for authentication<DT><B>Since:</B></DT>
+ <DD>2.5.62</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isRolePrincipal(java.security.Principal)"><!-- --></A><H3>
+isRolePrincipal</H3>
+<PRE>
+public static boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.520"><B>isRolePrincipal</B></A>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal)</PRE>
+<DL>
+<DD>Determines whether the supplied Principal is a "role principal".
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>principal</CODE> - the principal to test
+<DT><B>Returns:</B><DD><code>true</code> if the Principal is of type
+ <A HREF="../../../../org/apache/wiki/auth/GroupPrincipal.html" title="class in org.apache.wiki.auth"><CODE>GroupPrincipal</CODE></A> or
+ <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html" title="class in org.apache.wiki.auth.authorize"><CODE>Role</CODE></A>,
+ <code>false</code> otherwise</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isUserPrincipal(java.security.Principal)"><!-- --></A><H3>
+isUserPrincipal</H3>
+<PRE>
+public static boolean <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.533"><B>isUserPrincipal</B></A>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal)</PRE>
+<DL>
+<DD>Determines whether the supplied Principal is a "user principal".
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>principal</CODE> - the principal to test
+<DT><B>Returns:</B><DD><code>false</code> if the Principal is of type
+ <A HREF="../../../../org/apache/wiki/auth/GroupPrincipal.html" title="class in org.apache.wiki.auth"><CODE>GroupPrincipal</CODE></A> or
+ <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html" title="class in org.apache.wiki.auth.authorize"><CODE>Role</CODE></A>,
+ <code>true</code> otherwise</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="doJAASLogin(java.lang.Class, javax.security.auth.callback.CallbackHandler, java.util.Map)"><!-- --></A><H3>
+doJAASLogin</H3>
+<PRE>
+protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A>> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.556"><B>doJAASLogin</B></A>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><? extends <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi">LoginModule</A>> clazz,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/callback/CallbackHandler.html?is-external=true" title="class or interface in javax.security.auth.callback">CallbackHandler</A> handler,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>> options)
+ throws <A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></PRE>
+<DL>
+<DD>Instantiates and executes a single JAAS
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true" title="class or interface in javax.security.auth.spi"><CODE>LoginModule</CODE></A>, and returns a Set of
+ Principals that results from a successful login. The LoginModule is instantiated,
+ then its <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/spi/LoginModule.html?is-external=true#initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)" title="class or interface in javax.security.auth.spi"><CODE>LoginModule.initialize(Subject, CallbackHandler, Map, Map)</CODE></A>
+ method is called. The parameters passed to <code>initialize</code> is a
+ dummy Subject, an empty shared-state Map, and an options Map the caller supplies.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>clazz</CODE> - the LoginModule class to instantiate<DD><CODE>handler</CODE> - the callback handler to supply to the LoginModule<DD><CODE>options</CODE> - a Map of key/value strings for initializing the LoginModule
+<DT><B>Returns:</B><DD>the set of Principals returned by the JAAS method <A HREF="http://docs.oracle.com/javase/6/docs/api/javax/security/auth/Subject.html?is-external=true#getPrincipals()" title="class or interface in javax.security.auth"><CODE>Subject.getPrincipals()</CODE></A>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../org/apache/wiki/auth/WikiSecurityException.html" title="class in org.apache.wiki.auth">WikiSecurityException</A></CODE> - if the LoginModule could not be instantiated for any reason</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="findConfigFile(org.apache.wiki.WikiEngine, java.lang.String)"><!-- --></A><H3>
+findConfigFile</H3>
+<PRE>
+protected static <A HREF="http://docs.oracle.com/javase/6/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.608"><B>findConfigFile</B></A>(<A HREF="../../../../org/apache/wiki/WikiEngine.html" title="class in org.apache.wiki">WikiEngine</A> engine,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> name)</PRE>
+<DL>
+<DD>Looks up and obtains a configuration file inside the WEB-INF folder of a
+ wiki webapp.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>engine</CODE> - the wiki engine<DD><CODE>name</CODE> - the file to obtain, <em>e.g.</em>, <code>jspwiki.policy</code>
+<DT><B>Returns:</B><DD>the URL to the file</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLoginPrincipal(java.util.Set)"><!-- --></A><H3>
+getLoginPrincipal</H3>
+<PRE>
+protected <A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.685"><B>getLoginPrincipal</B></A>(<A HREF="http://docs.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</A><<A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A>> principals)</PRE>
+<DL>
+<DD>Returns the first Principal in a set that isn't a <A HREF="../../../../org/apache/wiki/auth/authorize/Role.html" title="class in org.apache.wiki.auth.authorize"><CODE>Role</CODE></A> or
+ <A HREF="../../../../org/apache/wiki/auth/GroupPrincipal.html" title="class in org.apache.wiki.auth"><CODE>GroupPrincipal</CODE></A>.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>principals</CODE> - the principal set
+<DT><B>Returns:</B><DD>the login principal</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addWikiEventListener(org.apache.wiki.event.WikiEventListener)"><!-- --></A><H3>
+addWikiEventListener</H3>
+<PRE>
+public void <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.704"><B>addWikiEventListener</B></A>(<A HREF="../../../../org/apache/wiki/event/WikiEventListener.html" title="interface in org.apache.wiki.event">WikiEventListener</A> listener)</PRE>
+<DL>
+<DD>Registers a WikiEventListener with this instance.
+ This is a convenience method.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>listener</CODE> - the event listener</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="removeWikiEventListener(org.apache.wiki.event.WikiEventListener)"><!-- --></A><H3>
+removeWikiEventListener</H3>
+<PRE>
+public void <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.714"><B>removeWikiEventListener</B></A>(<A HREF="../../../../org/apache/wiki/event/WikiEventListener.html" title="interface in org.apache.wiki.event">WikiEventListener</A> listener)</PRE>
+<DL>
+<DD>Un-registers a WikiEventListener with this instance.
+ This is a convenience method.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>listener</CODE> - the event listener</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="fireEvent(int, java.security.Principal, java.lang.Object)"><!-- --></A><H3>
+fireEvent</H3>
+<PRE>
+protected void <A HREF="../../../../src-html/org/apache/wiki/auth/AuthenticationManager.html#line.728"><B>fireEvent</B></A>(int type,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/security/Principal.html?is-external=true" title="class or interface in java.security">Principal</A> principal,
+ <A HREF="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A> target)</PRE>
+<DL>
+<DD>Fires a WikiSecurityEvent of the provided type, Principal and target Object
+ to all registered listeners.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>type</CODE> - the event type to be fired<DD><CODE>principal</CODE> - the subject of the event, which may be <code>null</code><DD><CODE>target</CODE> - the changed Object, which may be <code>null</code><DT><B>See Also:</B><DD><A HREF="../../../../org/apache/wiki/event/WikiSecurityEvent.html" title="class in org.apache.wiki.event"><CODE>WikiSecurityEvent</CODE></A></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AuthenticationManager.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ PREV CLASS
+ <A HREF="../../../../org/apache/wiki/auth/AuthorizationManager.html" title="class in org.apache.wiki.auth"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../index.html?org/apache/wiki/auth/AuthenticationManager.html" target="_top"><B>FRAMES</B></A>
+ <A HREF="AuthenticationManager.html" target="_top"><B>NO FRAMES</B></A>
+ <SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright © {inceptionYear}-2014 The Apache Software Foundation. All rights reserved.
+</BODY>
+</HTML>
http://git-wip-us.apache.org/repos/asf/jspwiki-site/blob/b37788df/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.png
----------------------------------------------------------------------
diff --git a/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.png b/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.png
new file mode 100755
index 0000000..9916393
Binary files /dev/null and b/apidocs/2.10.1/org/apache/wiki/auth/AuthenticationManager.png differ