Revised config file element descriptions.
authorcantor <cantor@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Sun, 25 Apr 2004 23:08:29 +0000 (23:08 +0000)
committercantor <cantor@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Sun, 25 Apr 2004 23:08:29 +0000 (23:08 +0000)
git-svn-id: https://subversion.switch.ch/svn/shibboleth/java-idp/trunk@1010 ab3bd59b-922f-494d-bb5f-6f0a3c29deca

doc/DEPLOY-GUIDE-TARGET.html

index e9930fb..07f4f52 100644 (file)
@@ -1,4 +1,4 @@
-<!doctype HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
 
 <head>
@@ -14,7 +14,7 @@ margin: .5em;
 }
 a:visited
 {
-color: #999999;
+color: #990000;
 }
 a:link
 {
@@ -737,7 +737,7 @@ most minor &quot;letter&quot; updates should be usable.</p>
             <p><span class="fixed">/opt/shibboleth/bin/shar -f &amp;</span> </p>
         </blockquote>
         <p>In most cases, the build process insures that the SHAR can locate
-        the configuration file and schemas, but the SHIB_CONFIG and SHIB_SCHEMAS
+        the configuration file and schemas, but the SHIBCONFIG and SHIBSCHEMAS
         environment variables may be used as well. Command line options can also
         be used to specify them.</p>
         <p>On Windows, the SHAR is a service and is managed separately.</li>
@@ -831,12 +831,12 @@ most minor &quot;letter&quot; updates should be usable.</p>
         <dd class="attribute"><span class="fixed">-config &lt;pathname&gt;</span> </dd>
         <dd class="value">Specifies the pathname of the SHAR&#39;s configuration 
         file. Defaults to <span class="fixed">\opt\shibboleth\etc\shibboleth\shibboleth.xml</span> 
-        or the value of the <span class="fixed">SHIB_CONFIG</span> environment 
+        or the value of the <span class="fixed">SHIBCONFIG</span> environment 
         variable, if it is set.</dd>
         <dd class="attribute"><span class="fixed">-schemadir &lt;path&gt;</span> </dd>
         <dd class="value">Specifies the path to the XML schema files. Defaults to
         <span class="fixed">\opt\shibboleth\etc\shibboleth</span> or the value of the
-        <span class="fixed">SHIB_SCHEMAS</span> environment variable, if it is set.</dd>
+        <span class="fixed">SHIBSCHEMAS</span> environment variable, if it is set.</dd>
         <dd class="attribute"><span class="fixed">-install &lt;servicename&gt;</span></dd>
         <dd class="value">Installs the SHAR as a named service in the Windows 
         service database. A name should be provided if multiple instances of the 
@@ -854,20 +854,20 @@ most minor &quot;letter&quot; updates should be usable.</p>
 <h3><a name="4."></a>4. Getting Running</h3>
 <h4><a name="4.a."></a>4.a. Configuring <span class="fixed">shibboleth.xml</span></h4>
 <blockquote>
-       <p>The configuration for the target is mostly contained within <span class="fixed">shibboleth.xml</span>, located by default at <span class="fixed">\opt\shibboleth\etc\shibboleth\shibboleth.xml</span>.  The target comes pre-configured with certificates and settings that will work against a dummy origin; however, there are several values that must later be changed to interoperate with other sites securely and effectively.</p><p>The following is a hyperlinked version of a basic configuration file, followed by a list of elements and attributes that must be modified.  The actual example shipped with Shibboleth includes many more options that are commented out and other elements necessary to support dummy functionality.  Click on any attribute or element for more information on its population and definition.</p>
+       <p>The configuration for the target is mostly contained within <span class="fixed">shibboleth.xml</span>, located by default at <span class="fixed">\opt\shibboleth\etc\shibboleth\shibboleth.xml</span>.  The target comes pre-configured with certificates and settings that will work against a test origin running on the same server; however, there are several values that must later be changed to interoperate with other sites securely and effectively.</p><p>The following is a hyperlinked version of a basic configuration file, followed by a list of elements and attributes that must be modified.  The actual example shipped with Shibboleth includes many more options that are commented out and other elements necessary to support test functionality.  Click on any attribute or element for more information on its population and definition.</p>
 
 <blockquote><span class="fixed">
 <a class="fixedlink" href="#confShibbolethTargetConfig">&lt;ShibbolethTargetConfig     xmlns=&quot;urn:mace:shibboleth:target:config:1.0&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logger=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/shibboleth.logger&quot;&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logger=&quot;/opt/shibboleth/etc/shibboleth/shibboleth.logger&quot; clockSkew=&quot;180&quot;&gt;</a>
 <br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confExtensions">&lt;Extensions&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confLibrary">&lt;Library path=&quot;/opt/local/shibboleth-1.2/libexec/xmlproviders.so&quot; fatal=&quot;true&quot;/&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confLibrary">&lt;Library path=&quot;/opt/shibboleth/libexec/xmlproviders.so&quot; fatal=&quot;true&quot;/&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confExtensions">&lt;/Extensions&gt;</a>
 <br>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHAR">&lt;SHAR logger=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/shar.logger&quot;&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHAR">&lt;SHAR logger=&quot;/opt/shibboleth/etc/shibboleth/shar.logger&quot;&gt;</a>
 <br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confExtensions">&lt;Extensions&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confLibrary">&lt;Library path=&quot;/opt/local/shibboleth-1.2/libexec/shib-mysql-ccache.so&quot; fatal=&quot;false&quot;/&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confLibrary">&lt;Library path=&quot;/opt/shibboleth/libexec/shib-mysql-ccache.so&quot; fatal=&quot;false&quot;/&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confExtensions">&lt;/Extensions&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confUnixListener">&lt;UnixListener address=&quot;/tmp/shar-socket&quot;/&gt;</a>
@@ -877,11 +877,11 @@ most minor &quot;letter&quot; updates should be usable.</p>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--&gt;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confMemorySessionCache">&lt;MemorySessionCache cleanupInterval=&quot;300&quot; cacheTimeout=&quot;3600&quot; AATimeout=&quot;30&quot; AAConnectTimeout=&quot;15&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;defaultLifetime=&quot;1800&quot; retryInterval=&quot;300&quot; strictValidity=&quot;true&quot; propagateErrors=&quot;false&quot;/&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;defaultLifetime=&quot;1800&quot; retryInterval=&quot;300&quot; strictValidity=&quot;true&quot; propagateErrors=&quot;true&quot;/&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHAR">&lt;/SHAR&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHIRE">&lt;SHIRE logger=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/shire.logger&quot;&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHIRE">&lt;SHIRE logger=&quot;/opt/shibboleth/etc/shibboleth/shire.logger&quot;&gt;</a>
 <br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confRequestMapProvider">&lt;RequestMapProvider type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLRequestMap&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confRequestMap">&lt;RequestMap applicationId=&quot;default&quot;&gt;</a>
@@ -903,44 +903,54 @@ most minor &quot;letter&quot; updates should be usable.</p>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSHIRE">&lt;/SHIRE&gt;</a>
 <br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confApplications">&lt;Applications xmlns:saml=&quot;urn:oasis:names:tc:SAML:1.0:assertion&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;   applicationId=&quot;default&quot; providerId=&quot;https://localhost/shibboleth/target&quot;&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;applicationId=&quot;default&quot; providerId=&quot;https://localhost/shibboleth/target&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confSessions">&lt;Sessions lifetime=&quot;7200&quot; timeout=&quot;3600&quot; checkAddress=&quot;true&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shireURL=&quot;/Shibboleth.shire&quot; shireSSL=&quot;false&quot; cookieName=&quot;shib-default-app&quot; cookieProps=&quot;; path=/&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shireURL=&quot;/Shibboleth.shire&quot; shireSSL=&quot;false&quot; cookieName=&quot;_shibsession_default&quot; cookieProps=&quot;; path=/&quot;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wayfURL=&quot;https://wayf.internet2.edu/InQueue/WAYF&quot;/&gt;</a>
 <br>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confErrors">&lt;Errors shire=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/shireError.html&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rm=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/rmError.html&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;access=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/accessError.html&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confErrors">&lt;Errors shire=&quot;/opt/shibboleth/etc/shibboleth/shireError.html&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rm=&quot;/opt/shibboleth/etc/shibboleth/rmError.html&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;access=&quot;/opt/shibboleth/etc/shibboleth/accessError.html&quot;
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;supportContact=&quot;root@localhost&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logoLocation=&quot;/logo.gif&quot;/&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logoLocation=&quot;/shibtarget/logo.jpg&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;styleSheet=&quot;/shibtarget/main.css&quot;/&gt;</a>
+<br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPolicy">&lt;Policy signRequest=&quot;false&quot; signedResponse=&quot;false&quot; signedAssertions=&quot;false&quot;&gt;</a>
-
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confAAPProvider">&lt;AAPProvider type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLAAP&quot; uri=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/AAP.xml&quot;/&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confAttributeDesignator">&lt;AttributeDesignator AttributeName=&quot;urn:mace:dir:attribute-def:eduPersonScopedAffiliation&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AttributeNamespace=&quot;urn:mace:shibboleth:1.0:attributeNamespace:uri&quot;/&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--&gt;
+<br>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confAAPProvider">&lt;AAPProvider type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLAAP&quot; uri=&quot;/opt/shibboleth/etc/shibboleth/AAP.xml&quot;/&gt;</a>
+<br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confFederationProvider">&lt;FederationProvider type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLMetadata&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uri=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/sites.xml&quot;/&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uri=&quot;/opt/shibboleth/etc/shibboleth/sites.xml&quot;/&gt;</a>
+<br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confTrustProvider">&lt;TrustProvider type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLTrust&quot;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uri=&quot;/opt/local/shibboleth-1.2/etc/shibboleth/trust.xml&quot;/&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;saml:Audience&gt;urn:mace:inqueue&lt;/saml:Audience&gt;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uri=&quot;/opt/shibboleth/etc/shibboleth/trust.xml&quot;/&gt;</a>
+<br>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confRevocationProvider">&lt;RevocationProvider type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLRevocation&quot;
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uri=&quot;/opt/shibboleth/etc/shibboleth/trust.xml&quot;/&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--&gt;
+<br>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="confAudience">&lt;saml:Audience&gt;urn:mace:inqueue&lt;/saml:Audience&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPolicy">&lt;/Policy&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+<br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCredentialUse">&lt;CredentialUse TLS=&quot;defcreds&quot; Signing=&quot;defcreds&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confRelyingParty">&lt;RelyingParty Name=&quot;urn:mace:inqueue&quot; TLS=&quot;inqueuecreds&quot; Signing=&quot;inqueuecreds&quot;/&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCredentialUse">&lt;/CredentialUse&gt;</a>
 <br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confApplications">&lt;/Applications&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;
+<br>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCredentialsProvider">&lt;CredentialsProvider type=&quot;edu.internet2.middleware.shibboleth.common.Credentials&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCredentials">&lt;Credentials xmlns=&quot;urn:mace:shibboleth:credentials:1.0&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confFileResolver">&lt;FileResolver Id=&quot;defcreds&quot;&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confKey">&lt;Key format=&quot;PEM&quot;&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPath">&lt;Path&gt;/opt/local/shibboleth-1.2/etc/shibboleth/shar.key&lt;/Path&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPath">&lt;Path&gt;/opt/shibboleth/etc/shibboleth/shar.key&lt;/Path&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confKey">&lt;/Key&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCertificate">&lt;Certificate format=&quot;PEM&quot;&gt;</a>
-<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPath">&lt;Path&gt;/opt/local/shibboleth-1.2/etc/shibboleth/shar.crt&lt;/Path&gt;</a>
+<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confPath">&lt;Path&gt;/opt/shibboleth/etc/shibboleth/shar.crt&lt;/Path&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCertificate">&lt;/Certificate&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confFileResolver">&lt;/FileResolver&gt;</a>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="fixedlink" href="#confCredentials">&lt;/Credentials&gt;</a>
@@ -953,13 +963,19 @@ most minor &quot;letter&quot; updates should be usable.</p>
 <p>The following changes must be made to the default configuration before the target will interoperate in a federation.</p>
     <ol type="1">
         <li> 
-        <p>The main <a href="#confApplications"><span class="fixed">Applications</span></a> element's <span class="fixed">providerId</span> attribute must be changed to reflect the URN this target will use to identify itself with its primary relying party.  This will often be supplied by a federation.</p>
+        <p>The main <a href="#confApplications"><span class="fixed">Applications</span></a> element's <span class="fixed">providerId</span> attribute must be changed to reflect the URI this target will use to identify itself to origins by default. This will often be approved or supplied by a federation.</p>
                </li>
                <li>
-               <p>The <span class="fixed">supportContact</span> for the target found in the <a href="#confErrors"><span class="fixed">Errors</span></a> element should be changed to ensure that users have a proper support mechanism.</p>
+               <p>The <span class="fixed">supportContact</span> and error templates for the target found in the <a href="#confErrors"><span class="fixed">Errors</span></a> element should be changed to ensure that users have a proper support mechanism.</p>
                </li>
                <li>
-               <p>Proper credentials for this target signed by an authority that the primary relying party recognizes must be referenced by the <a href="#confCredentials"><span class="fixed">Credentials</span></a> element.  The default configuration points at flat files with widely-available, insecure keys and certificates.  Note that keys are supported in a variety of formats: DER, PEM, encrypted PEM, PKCS8, and encrypted PKCS8.  If a keystore must be used instead, consult <a href="#5.a.">section 5.a</a> for appropriate structure and details on population.</p>
+               <p>Proper credentials for this target signed by an authority that the federation recognizes must be referenced by the <a href="#confCredentials"><span class="fixed">Credentials</span></a> element.  The default configuration points at flat files with widely-available, insecure keys and certificates.  Note that keys are supported in a variety of formats: DER, PEM, encrypted PEM, PKCS8, and encrypted PKCS8.</p>
+        </li>
+        <li>
+        <p><a href="#confFederationProvider"><span class="fixed">FederationProvider</span></a> and
+        <a href="#confTrustProvider"><span class="fixed">TrustProvider</span></a> elements must be added or
+        changed as needed to reflect the arrangements required. This information is often provided by
+        federations to their members.</p>
         </li>
     </ol>
 
@@ -969,225 +985,229 @@ most minor &quot;letter&quot; updates should be usable.</p>
     <p>Information in the logging configuration files referenced by
     <span class="fixed">shibboleth.xml</span> may require additional changes to 
     meet local needs. The logging level can be raised to <span class="fixed">
-    INFO</span> or <span class="fixed">DEBUG</span> if additional detail is 
-    needed for testing. It is recommended that after initial installation is 
+    DEBUG</span> if extremely detailed information is needed for testing.
+    It is recommended that after initial installation is 
     completed, the log level in both files be left at either <span class="fixed">
     INFO</span> or <span class="fixed">WARN</span>.</p>
     <p>All elements are optional unless otherwise specified.  All attributes of an element are optional unless designated <span class="mandatory">mandatory</span> by a purple background.</p>
-        <dd class="attribute"><a name="confAAPProvider"><span class="fixed">&lt;AAPProvider type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLAAP&quot;   uri=&quot;<i>pathname</i>&quot;/&gt;</span></dd>
-        <dd class="value">This element is used to specify individual attribute acceptance policies that will apply to this application and may appear one or more times within the <a href="#confAttributes"><span class="fixed">Attributes</span></a> element.  For information about these policies and their format, refer to <a href="#4.e.">section 4.e</a>.</dd>
-
-<!-- Removed due to complexity
-
-        <dd class="attribute"><a name="confApache"><span class="fixed">&lt;Apache apacheConfig=&quot;<i>true/false</i>&quot;/&gt;</span></dd>
-        <dd class="value">Session configuration for Apache-based targets will be specified in <span class="fixed">httpd.conf</span> if <span class="fixed">true</span> or in <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> elements if <span class="fixed">false</span>.</dd>
+    <dl>
+        <dd class="attribute"><a name="confAAPProvider"><span class="fixed">&lt;AAPProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLAAP&quot;</span> uri=&quot;<i>pathname</i>&quot;/&gt;</span></dd>
+        <dd class="value">This element is used to specify individual attribute acceptance policies that will apply to this application and may appear zero or more times within the <a href="#confPolicy"><span class="fixed">Policy</span></a> element.  For information about these policies and their format, refer to <a href="#4.e.">section 4.e</a>.
+        <p>The default set of AAP providers can be overridden within individual <a href="#confApplication"><span class="fixed">Application</span></a> elements.</p></dd>
 
--->
         <dd class="attribute"><a name="confApplication"><span class="fixed">&lt;Application <span class="mandatory">id=&quot;<i>identifier</i>&quot;</span> providerId=&quot;<i>identifier</i>&quot;&gt;</span></dd>
-        <dd class="value">Individual applications that require different attributes, credentials, sessions, etc. can be differentiated from the default configuration as specified in the <a href="#confApplications"><span class="fixed">Applications</span></a> element, which contains this element.  It must still contain a <a href="#confSessions"><span class="fixed">Sessions</span></a> element, but use of the <a href="#confErrors"><span class="fixed">Errors</span></a>, <a href="#confPolicy"><span class="fixed">Policy</span></a>, and <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> elements is optional.
+        <dd class="value">Individual applications that require different attributes, session settings, policies, etc. can be differentiated from the default configuration as specified in the <a href="#confApplications"><span class="fixed">Applications</span></a> element, which contains this element.  It must contain a <a href="#confSessions"><span class="fixed">Sessions</span></a> element, but overriding the default <a href="#confErrors"><span class="fixed">Errors</span></a>, <a href="#confPolicy"><span class="fixed">Policy</span></a>, and <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> elements is optional.
 <ul>
-<li class="mandatory"><span class="fixed">identifier</span>: This attribute defines an internal identifier allowing individual <span class="fixed">applicationId</span> attributes as part of <a href="#confRequestMap"><span class="fixed">RequestMap</span></a>, <a href="#confHost"><span class="fixed">Host</span></a>, and <a href="#confPath"><span class="fixed">Path</span></a> elements to point to this <span class="fixed">Application</span> to handle requests.</li>
-<li><span class="fixed">providerId</span>: Separate from the internal identifier, the <span class="fixed">providerId</span> is the value that will be sent to the AA in attribute requests to allow the AA to differentiate applications on the target.  This value will often be provided to a federation to allow the origins to correctly release attributes to targets.  If none is specified, the default <a href="#confApplications><span class="fixed">Applications</span></a> <span class="fixed">providerId</span> will apply.</li>
+<li class="mandatory"><span class="fixed">id</span>: This attribute defines an internal identifier allowing individual <span class="fixed">applicationId</span> attributes as part of <a href="#confHost"><span class="fixed">Host</span></a> and <a href="#confPath"><span class="fixed">Path</span></a> elements to point to this <span class="fixed">Application</span> to handle requests.</li>
+<li><span class="fixed">providerId</span>: Distinct from the internal identifier, the <span class="fixed">providerId</span> is the unique identifier that will be used when communicating with origin sites to request authentication or attributes.  This value is referenced by origins when creating rules for the release of attributes to targets.  If none is specified, the default <a href="#confApplications><span class="fixed">Applications</span></a> element's <span class="fixed">providerId</span> applies.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confApplications"><span class="fixed">&lt;Applications id=&quot;<i>identifier</i>&quot; <span class="mandatory">providerId=&quot;<i>identifier</i>&quot;</span>&gt;</span></dd>
-        <dd class="value">The <span class="fixed">Applications</span> element must appear once and contains default settings for requests handled by the target whose applicable request mapping using matching <a href="#confRequestMap"><span class="fixed">RequestMap</span></a>, <a href="#confHost"><span class="fixed">Host</span></a>, and <a href="#confPath"><span class="fixed">Path</span></a> elements has no declared <span class="fixed">applicationId</span> attribute.  It must contain at least one each of the <a href="#confSessions"><span class="fixed">Sessions</span></a>, <a href="#confErrors"><span class="fixed">Errors</span></a>, <a href="#confPolicy"><span class="fixed">Policy</span></a>, and <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> elements, and may contain individual <a href="#confApplication"><span class="fixed">Application</span></a> elements.  Contained by the main <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element.
+        <dd class="attribute"><a name="confApplications"><span class="fixed">&lt;Applications id=&quot;<i>default</i>&quot; <span class="mandatory">providerId=&quot;<i>identifier</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">The <span class="fixed">Applications</span> element must appear once and contains default settings for requests handled by the target whose applicable request mapping using matching <a href="#confHost"><span class="fixed">Host</span></a> and <a href="#confPath"><span class="fixed">Path</span></a> elements has no declared <span class="fixed">applicationId</span> attribute.  It must contain at least one each of the <a href="#confSessions"><span class="fixed">Sessions</span></a>, <a href="#confErrors"><span class="fixed">Errors</span></a>, <a href="#confPolicy"><span class="fixed">Policy</span></a>, and <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> elements, and may contain individual <a href="#confApplication"><span class="fixed">Application</span></a> elements.  Contained by the main <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element.
 <ul>
-<li><span class="fixed">identifier</span>: This attribute defines an internal identifier allowing individual <span class="fixed">applicationId</span> attributes need to point to the main <span class="fixed">Applications</span> configuration as a handler by over-riding their container elements.</li>
-<li class="mandatory"><span class="fixed">providerId</span>: Separate from the internal identifier, the <span class="fixed">providerId</span> is the value that will be sent to the AA in attribute requests to allow the AA to differentiate applications on the target.  This value will often be provided to a federation to allow the origins to correctly release attributes to targets.</li>
+<li><span class="fixed">id</span>: This attribute has a fixed value of "default" and should not be changed.</li>
+<li class="mandatory"><span class="fixed">providerId</span>: Distinct from the internal identifier, the <span class="fixed">providerId</span> is the unique identifier that will be used when communicating with origin sites to request authentication or attributes.  This value is referenced by origins when creating rules for the release of attributes to targets.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confAttributes"><span class="fixed">&lt;Attributes signRequest=&quot;<i>true/false</i>&quot; signedResponse=&quot;<i>true/false</i>&quot; signedAssertions=&quot;<i>true/false</i>&quot;&gt;</span></dd>
-        <dd class="value">The <span class="fixed">Attributes</span> element affects how this application handles attribute queries to AA's and the processing of these attributes upon receipt.  It may contain one or more <a href="#confAAPProvider><span class="fixed">AAPProvider</span></a> elements, each of which specifies a set of attribute acceptance policies; see <a href="#4.e.">section 4.e</a> for details.
+        <dd class="attribute"><a name="confArgument"><span class="fixed">&lt;Argument&gt;<i>value</i>&lt;/Argument&gt;</span></dd>
+        <dd class="value">The <span class="fixed">Argument</span> element is used in the <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> element to specify one or more arguments to pass to the MySQL database engine.</dd>
+
+        <dd class="attribute"><a name="confAttributeDesignator"><span class="fixed">&lt;saml:AttributeDesignator <span class="mandatory">AttributeName=&quot;<i>name</i>&quot; AttributeNamespace=&quot;<i>namespace</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">The <span class="fixed">AttributeDesignator</span> element is used in the <a href="#confPolicy"><span class="fixed">Policy</span></a> element to name an attribute to specifically request from origins on behalf of an application. If none are specified, the application will be given anything the origin allows it to see.
 <ul>
-<li><span class="fixed">signRequest</span>: If <span class="fixed">true</span>, the target will sign attribute requests that it sends to origins for requests for this application.  This is not always necessary, as the SSL session can provide authentication.</li>
-<li><span class="fixed">signedResponse</span>: If this is <span class="fixed">true</span>, the target will require that all SAML attribute responses it receives for this application be signed.</li>
-<li><span class="fixed">signedAssertions</span>: If this is <span class="fixed">true</span>, the target will require that individual SAML attribute assertions it receives for this application be signed.  This may be particularly useful if the application is exporting the assertion.</li>
-</ul></dd>
+<li class="mandatory"><span class="fixed">AttributeName</span>: Specifies the name of a SAML attribute, generally a URI.</li>
+<li class="mandatory"><span class="fixed">AttributeNamespace</span>: Specifies the attribute's SAML namespace, which Shibboleth by convention sets to &quot;urn:mace:shibboleth:1.0:attributeNamespace:uri&quot;.</li>
+</ul>
+<p>The default set of designators can be overridden within individual <a href="#confApplication"><span class="fixed">Application</span></a> elements, but if defaults are specified, it isn't possible to &quot;remove&quot; them and revert to none.</p>
+</dd>
 
-        <dd class="attribute"><a name="confCAPath"><span class="fixed">&lt;CAPath&gt;<i>pathname</i>&lt;/CAPath&gt;</span></dd>
-        <dd class="value">Paired with a <a href="#confPath"><span class="fixed">Path</span></a> element and contained by a <a href="#confFileResolver"><span class="fixed">FileResolver</span></a> element, this element allows for the specification of additional certificates in the chain up to the trust anchor.  As many <span class="fixed">CAPath</span> elements as necessary to complete the chain may be specified.  The expectations of the target and the federation may determine the necessity for the use of this field.</dd>
+        <dd class="attribute"><a name="confAudience"><span class="fixed">&lt;saml:Audience&gt;<i>value</i>&lt;/saml:Audience&gt;</span></dd>
+        <dd class="value">The <span class="fixed">Audience</span> element is used in the <a href="#confPolicy"><span class="fixed">Policy</span></a> element to specify one or more SAML audience URIs to treat as valid while processing assertions. A target application always includes its own <span class="fixed">providerId</span> as an audience value.
+            <p>Within an <a href="#confApplication"><span class="fixed">Application</span></a> element, this setting is not inherited from the <a href="#confApplications"><span class="fixed">Applications</span></a> element. All values desired must be specified.</p></dd>
 
-        <dd class="attribute"><a name="confCertAlias"><span class="fixed">&lt;CertAlias&gt;<i>string</i>&lt;/CertAlias&gt;</span></dd>
-        <dd class="value">Specifies the alias for the certificate 
-        corresponding to the private key used by the HS.  If no alias is specified, defaults to the private key's alias.  Contained by the <a href="#confKeyStoreResolver"><span class="fixed">KeyStoreResolver</span></a> element.</dd>
+        <dd class="attribute"><a name="confCAPath"><span class="fixed">&lt;CAPath&gt;<i>pathname</i>&lt;/CAPath&gt;</span></dd>
+        <dd class="value">Paired with a <a href="#confPath"><span class="fixed">Path</span></a> element and contained by a <a href="#confFileResolver"><span class="fixed">FileResolver</span></a> element, this element allows for the specification of additional certificates in the chain up to the trust anchor.  As many <span class="fixed">CAPath</span> elements as necessary to complete the chain may be specified.  May be needed if the relying party does not possess the entire CA chain already.</dd>
 
         <dd class="attribute"><a name="confCertificate"><span class="fixed">&lt;Certificate format=&quot;<i>type</i>&quot;&gt;</span></dd>
-        <dd class="value">This specifies the certificate corresponding to this set of credentials.  The certificate itself must be referred to using a <a href="#confPath"><span class="fixed">Path</span></a> element contained by this element.  If this certificate isn't self-signed or signed by a root familiar to the origin, the files of certificates in the path to the root may be specified using one or more <a href="#confPath"><span class="fixed">CAPath</span></a> elements.  Valid encodings are <span class="fixed">PEM</span> and <span class="fixed">DER</span>.  It resides within the <a href="#confFileResolver"><span class="fixed">FileResolver</span> element and must be paired with the corresponding private key using the <a href="#confKey"><span class="fixed">Key</span></a> element.</dd>
+        <dd class="value">This specifies the certificate corresponding to this set of credentials.  The certificate itself must be referred to using a <a href="#confPath"><span class="fixed">Path</span></a> element contained by this element.  If this certificate isn't self-signed or signed by a root familiar to the relying party, the files of certificates in the path to the root may be specified using one or more <a href="#confPath"><span class="fixed">CAPath</span></a> elements.  Valid encodings are <span class="fixed">PEM</span>, <span class="fixed">DER</span>, and <span class="fixed">PKCS12</span>.  It resides within the <a href="#confFileResolver"><span class="fixed">FileResolver</span> element and must be paired with the corresponding private key using the <a href="#confKey"><span class="fixed">Key</span></a> element.</dd>
 
         <dd class="attribute"><a name="confCredentials"><span class="fixed">&lt;Credentials xmlns=&quot;urn:mace:shibboleth:credentials:1.0&quot;&gt;</span></dd>
-        <dd class="value">This element is the container for credentials used by the credential mechanism specified by the <a href="#confCredentialsProvider"><span class="fixed">CredentialsProvider</span></a> element.  For most deployments, the URN should be <span class="fixed"></span>.  It must contain one <a href="#confFileResolver"><span class="fixed">FileResolver</span></a> element for flat key and certificate files or one <a href="#confKeyStoreResolver"><span class="fixed">KeyStoreResolver</span></a> element for compound keystores.</dd>
+        <dd class="value">This element is the container for credentials used by the XML-based credentials provider with type &quot;edu.internet2.middleware.shibboleth.common.Credentials&quot; It must contain one or more <a href="#confFileResolver"><span class="fixed">FileResolver</span></a> elements.</dd>
 
-        <dd class="attribute"><a name="confCredentialsProvider"><span class="fixed">&lt;CredentialsProvider type=&quot;edu.internet2.middleware.shibboleth.common.Credentials&quot;&gt;</span></dd>
-        <dd class="value">This element is the container for credentials used by the target and is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element.  It must contain one <a href="#confCredentials"><span class="fixed">Credentials</span></a> element detailing the individual credentials to be used by the target in attribute transactions.</dd>
+        <dd class="attribute"><a name="confCredentialsProvider"><span class="fixed">&lt;CredentialsProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.common.Credentials&quot;</span>&gt;</span></dd>
+        <dd class="value">This element is the container for providers of credentials used by the target and is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element.  The supplied provider of type &quot;edu.internet2.middleware.shibboleth.common.Credentials&quot; must contain one <a href="#confCredentials"><span class="fixed">Credentials</span></a> element detailing the individual credentials to be used by the target. Other provider types might require different content.</dd>
 
-        <dd class="attribute"><a name="confErrors"><span class="fixed">&lt;Errors <span class="mandatory">shire=&quot;<i>pathname</i>&quot; rm=&quot;<i>pathname</i>&quot; access=&quot;<i>pathname</i>&quot; supportContact=&quot;<i>e-mail</i>&quot; logoLocation=&quot;<i>URL</i>&quot;</span>/&gt;</span></dd>
-        <dd class="value">Shibboleth is capable of displaying customized error pages based on templates and special resources provided by these configuration attributes.  These should all be customized to fit the web scheme of the target.  For more information on configuration of the error page generation, please see <a href="#4.b.">section 4.b</a>.
+        <dd class="attribute"><a name="confCredentialUse"><span class="fixed">&lt;CredentialUse <span class="mandatory">TLS=&quot;<i>string</i>&quot; Signing=&quot;<i>string</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">Required in the <a href="#confApplications"><span class="fixed">Applications</span></a> element or overridden in <a href="#confApplication"><span class="fixed">Application</span></a> elements, this specifies the credentials used by the target for signing and TLS/SSL. The <span class="fixed">TLS</span> and <span class="fixed">Signing</span> attribute values reference the identifiers of credential resolvers defined in <a href="#confCredentialsProvider"><span class="fixed">CredentialsProvider</span></a> elements. May also contain <a href="#confRelyingParty"><span class="fixed">RelyingParty</span></a> elements that override the credentials to use for specific origins or federations.</dd>
+
+        <dd class="attribute"><a name="confErrors"><span class="fixed">&lt;Errors <span class="mandatory">shire=&quot;<i>pathname</i>&quot; rm=&quot;<i>pathname</i>&quot; access=&quot;<i>pathname</i>&quot;</span> supportContact=&quot;<i>e-mail</i>&quot; logoLocation=&quot;<i>URL</i>&quot;/&gt;</span></dd>
+        <dd class="value">Shibboleth is capable of displaying customized error pages based on templates and special resources provided by additional attributes in this element.  These should all be customized to fit the requirements of the target application.  For more information on configuration of error page generation, please see <a href="#4.b.">section 4.b</a>.
 <ul>
 <li class="mandatory"><span class="fixed">shire</span>: Specifies the location of the template for the error page generated when there is an error re-directing the user to the WAYF or processing a new session sign-on.</li>
-<li class="mandatory"><span class="fixed">rm</span>: Specifies the location of the template for the error page generated if internal errors occur in the RM.</li>
-<li class="mandatory"><span class="fixed">accessError</span>: Specifies the location of the template for the page displayed to users when access to a protected resource is denied by the RM. This is distinct from when errors occur during the evaluation          process itself, and indicates a denial of authorization.</li>
-<li class="mandatory"><span class="fixed">supportContact</span>: Specifies a support e-mail address for the user to contact.</li>
-<li class="mandatory"><span class="fixed">logoLocation</span>: Specifies the location of the logo used in the generation of error pages. This logo can be in any format that the web browser will understand, and should be a URL (absolute or relative) that will return a valid logo.</li>
-</ul></dd>
+<li class="mandatory"><span class="fixed">rm</span>: Specifies the location of the template for the error page generated if internal errors occur when supplying attributes to the application.</li>
+<li class="mandatory"><span class="fixed">accessError</span>: Specifies the location of the template for the page displayed to users when access to a protected resource is denied based on access control. This is distinct from when errors occur during the evaluation process itself, and indicates a denial of authorization.</li>
+<li><span class="fixed">supportContact</span>: Specifies a support e-mail address for the user to contact.</li>
+<li><span class="fixed">logoLocation</span>: Specifies the location of the logo used in the generation of error pages. This logo can be in any format that the web browser will understand, and should be a URL (absolute or relative) that will return a valid logo.</li>
+</ul>
+The last two attributes are examples of tags that can be inserted at runtime into the templates. Arbitrary attributes can be used.
+</dd>
 
         <dd class="attribute"><a name="confExtensions"><span class="fixed">&lt;Extensions&gt;</span></dd>
         <dd class="value">Extension libraries for one of the Shibboleth components or the entire target can be specified using this element depending on where it's present.  It may be contained by any of the <a href="#confSHAR"><span class="fixed">SHAR</span></a>, <a href="#confSHIRE"><span class="fixed">SHIRE</span></a>, or <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> elements.  It should always contain one or more <a href="#confLibrary"><span class="fixed">Library</span></a> elements.</dd>
 
-        <dd class="attribute"><a name="confFederationProvider"><span class="fixed">&lt;FederationProvider type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLMetadata&quot; uri=&quot;<i>pathname</i>&quot;/&gt;</span></dd>
-        <dd class="value">This element, when specified within a <a href="#confPolicy"><span class="fixed">Policy</span></a> element, points to metadata in the form of a sites file for use by this application distributed by the federation under which it operates.  This should be updated regularly; see <a href="#4.g.">section 4.g</a> for further details.</dd>
+        <dd class="attribute"><a name="confFederationProvider"><span class="fixed">&lt;FederationProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLMetadata&quot;</span> uri=&quot;<i>pathname</i>&quot;&gt;</span></dd>
+        <dd class="value">This element, when specified within a <a href="#confPolicy"><span class="fixed">Policy</span></a> element, points to operational metadata either inline within the element or in a local XML file. Federations will often publish signed XML files for targets to download periodically. This should be updated regularly; see <a href="#4.g.">section 4.g</a> for further details.
+        <p>If an <a href="#confApplication"><span class="fixed">Application</span></a> does not include any <span class="fixed">FederationProvider</span> elements, the default set is used.</p>
+        </dd>
 
-        <dd class="attribute"><a name="confFileResolver"><span class="fixed">&lt;FileResolver Id=&quot;<i>string</i>&quot;&gt;</span></dd>
-        <dd class="value">This element defines a pair of files used to store a private key and certificate associated with a given identifier and is contained by the <a href="#confCredentials"><span class="fixed">Credentials</span></a> element.  <a href="#confRelyingParty"><span class="fixed">RelyingParty</span></a> elements will refer to these identifiers allowing multiple resolver elements to be used to specify different credential storage for different applications.  It must contain one <a href="#confKey"><span class="fixed">Key</span></a> element and should contain one <a href="#confCertificate"><span class="fixed">Certificate</span></a> element.</dd>
+        <dd class="attribute"><a name="confFileResolver"><span class="fixed">&lt;FileResolver <span class="mandatory">Id=&quot;<i>string</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">This element defines the files used to store a private key, certificate, and certificate authorities and associates the set with an identifier. Contained by the <a href="#confCredentials"><span class="fixed">Credentials</span></a> element. <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> and <a href="#confRelyingParty"><span class="fixed">RelyingParty</span></a> elements will refer to these identifiers in their <span class="fixed">TLS</span> and <span class="fixed">Signing</span> attributes, allowing different credentials to be used for different applications and relying parties.  It must contain one <a href="#confKey"><span class="fixed">Key</span></a> element and should contain one <a href="#confCertificate"><span class="fixed">Certificate</span></a> element.</dd>
 
-        <dd class="attribute"><a name="confHost"><span class="fixed">&lt;Host scheme=&quot;<i>protocol</i>&quot; <span class="mandatory">name=&quot;<i>fqdn</i>&quot;</span> port=&quot;<i>integer</i>&quot; applicationId=&quot;<i>id</i>&quot; requireSession=&quot;<i>true/false</i>&quot; exportAssertion&gt;</span></dd>
-        <dd class="value">Individual hosts that this target protects are enumerated by <span class="fixed">Host</span> elements as contained by <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> element.  If a request is received by Shibboleth for a URL on this host, these parameters will be applied to the handling.  If there are <a href="#confPath"><span class="fixed">Path</span></a> elements within this element that match the URL and contain the <span class="fixed">applicationId</span>, <span class="fixed">requireSession</span>, or <span class="fixed">exportAssertion</span> attributes, they will over-ride the ones in this element; similarly, the ones within this element will over-ride the ones in the containing <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> element.
+        <dd class="attribute"><a name="confHost"><span class="fixed">&lt;Host scheme=&quot;<i>protocol</i>&quot; <span class="mandatory">name=&quot;<i>fqdn</i>&quot;</span> port=&quot;<i>integer</i>&quot; applicationId=&quot;<i>id</i>&quot; requireSession=&quot;<i>true/false</i>&quot; exportAssertion=&quot;<i>true/false</i>&quot;&gt;</span></dd>
+        <dd class="value">Individual (real or virtual) hosts that this target protects are enumerated by <span class="fixed">Host</span> elements in the <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> element.  If a request is processed by Shibboleth for a URL on this host, these parameters will be applied to it.  If there are <a href="#confPath"><span class="fixed">Path</span></a> elements within this element that match the URL and contain the <span class="fixed">applicationId</span>, <span class="fixed">requireSession</span>, or <span class="fixed">exportAssertion</span> attributes, they will override those in this element; similarly, the ones within this element will override those in the containing <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> element.
 <ul>
-<li><span class="fixed">scheme</span>: This specifies the protocol that this host is responding to requests on.  Valid choices are <span class="fixed">http</span>, <span class="fixed">https</span>, <span class="fixed">ftp</span>, <span class="fixed">ldap</span>, and <span class="fixed">ldaps</span>.</li>
-<li class="mandatory"><span class="fixed">name</span>: This is the domain name of the host that URL's will contain.  This appended to the <span class="fixed">scheme</span> must match what is contained in the URL for the request to be handled by this element.</li>
-<li><span class="fixed">port</span>: This is the port the host is listening on, if it's not standard.</li>
-<li><span class="fixed">requireSession</span>: This attribute controls whether the SHIRE will always establish a session before handing off to the application.  If <span class="fixed">true</span>, Shibboleth will force session establishment before this.  If <span class="fixed">false</span>, applications will be responsible for ensuring that sessions are generated if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> without a full understanding of the implications.</li>
-<li><span class="fixed">exportAssertion</span>: When this boolean is <span class="fixed">true</span>, the entire SAML attribute assertion received by          the SHAR is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML; however, it also permits an application to see attributes that may have been filtered by an AAP, or to forward the SAML assertion to a third party.  Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
+<li><span class="fixed">scheme</span>: This specifies the protocol on which this host responds.  Valid choices are <span class="fixed">http</span>, <span class="fixed">https</span>, <span class="fixed">ftp</span>, <span class="fixed">ldap</span>, and <span class="fixed">ldaps</span>.</li>
+<li class="mandatory"><span class="fixed">name</span>: This is the fully-qualified domain name of the host.  This appended to the <span class="fixed">scheme</span> must match what is contained in the URL for the element's settings to apply to the request.</li>
+<li><span class="fixed">port</span>: This is the port the host is listening on, if not the standard port for the scheme.</li>
+<li><span class="fixed">requireSession</span>: This attribute controls whether Shibboleth will forcibly establish an authenticated session with the user before handing off the request to the web server or application.  If <span class="fixed">true</span>, Shibboleth will force session establishment.  If <span class="fixed">false</span> (the default), applications are responsible for ensuring that a session exists if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> for protected content without a full understanding of the implications.</li>
+<li><span class="fixed">exportAssertion</span>: When <span class="fixed">true</span>, the entire SAML attribute assertion received from the origin is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML. Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
 </ul></dd>
 
         <dd class="attribute"><a name="confImplementation"><span class="fixed">&lt;Implementation&gt;</span></dd>
-        <dd class="value">A container element placed inside the <a href="#confSHIRE"><span class="fixed">SHIRE</span></a> element, the contents of this element will vary depending on the web server that this Shibboleth deployment serves.  Multiple configurations may be specified, but only one per web server type.  This element may contain the <a href="#confISAPI"><span class="fixed">ISAPI</span></a> element. <!--  NOT IMPLEMENTED: <a href="#confApache"><span class="fixed">Apache</span></a>, and <a href="#confNSAPI"><span class="fixed">NSAPI</span></a>, <a href="#confJava"><span class="fixed">Java</span></a> -->.</dd>
+        <dd class="value">A container element placed inside the <a href="#confSHIRE"><span class="fixed">SHIRE</span></a> element, the contents of this element will vary depending on the web server or environment that this Shibboleth deployment serves.  Multiple configurations may be specified, but only one per implementation type.  This element may contain the <a href="#confISAPI"><span class="fixed">ISAPI</span></a> element. <!--  NOT IMPLEMENTED: and <a href="#confNSAPI"><span class="fixed">NSAPI</span></a>, <a href="#confJava"><span class="fixed">Java</span></a> -->.</dd>
 
         <dd class="attribute"><a name="confISAPI"><span class="fixed">&lt;ISAPI normalizeRequest=&quot;<i>true/false</i>&quot;&gt;</span></dd>
-        <dd class="value">The configuration information for Shibboleth targets deployed behind ISAPI is stored inside this container element.  This element must contain one or more <a href="#confSite"><span class="fixed">Site</span></a> elements, each of which maps IIS IID values to the vhost name.  If <span class="fixed">normalizeRequest</span> is <span class="fixed">true</span>, all redirects and computed request URLs generated by Shibboleth will be created using the virtual server name assigned to the server.  If <span class="fixed">false</span>, the browser's supplied URL is sometimes used to compute the information.  This sometimes has no effect, depending on the capabilities of the web server, since the correct behavior is almost always to rely on the server's API to report the hostname and ignore the browser.  Contained by the <a href="#confImplementation"><span class="fixed">Implementation</span></a> element.</dd>
+        <dd class="value">The configuration information for Shibboleth targets deployed on Microsoft IIS is stored inside this container element.  This element must contain one or more <a href="#confSite"><span class="fixed">Site</span></a> elements, each of which maps an INSTANCE ID value to a hostname.  If <span class="fixed">normalizeRequest</span> is <span class="fixed">true</span> (the default), all redirects and computed request URLs generated by Shibboleth will be created using the hostname assigned to the site instance handling the request.  If <span class="fixed">false</span>, the browser's supplied URL is sometimes used to compute the information.  Contained by the <a href="#confImplementation"><span class="fixed">Implementation</span></a> element.</dd>
 
         <dd class="attribute"><a name="confKey"><span class="fixed">&lt;Key format=&quot;<i>type</i>&quot;&gt;</span></dd>
-        <dd class="value">This specifies the file containing a private key to be used by a set of credentials.  Valid encodings are <span class="fixed">PEM</span> and <span class="fixed">DER</span>.  Keys are supported in a variety of formats: DER, PEM, encrypted PEM, PKCS8, and encrypted PKCS8.  It resides within the <a href="#confFileResolver"><span class="fixed">FileResolver</span> element, should be paired with a <a href="#confCertificate"><span class="fixed">Certificate</span></a> element, and contain a <a href="#confPath"><span class="fixed">Path</span></a> element.</dd>
-
-        <dd class="attribute"><a name="confKeyAlias"><span class="fixed">&lt;KeyAlias&gt;<i>string</i>&lt;/KeyAlias&gt;</span></dd>
-        <dd class="value">Specifies the alias used for accessing the private 
-        key.  Contained by the <a href="#confKeyStoreResolver"><span class="fixed">KeyStoreResolver</span></a> element.</dd>
-
-        <dd class="attribute"><a name="confKeyPassword"><span class="fixed">&lt;KeyPassword&gt;<i>string</i>&lt;/KeyPassword&gt;</span></dd>
-        <dd class="value">Specifies the password used to retrieve the private 
-        key.  Contained by the <a href="#confKeyStoreResolver"><span class="fixed">KeyStoreResolver</span></a> element.</dd>
-
-        <dd class="attribute"><a name="confKeyStoreKeyAlias"><span class="fixed">&lt;KeyStoreKeyAlias&gt;<i>string</i>&lt;/KeyStoreKeyAlias&gt;</span></dd>
-        <dd class="value">Specifies the alias used for accessing the private 
-        key.  Contained by the <a href="#confNameMapping"><span class="fixed">NameMapping</span></a> element when a <span class="fixed">CryptoHandleGenerator</span> type is specified.</dd>
-
-        <dd class="attribute"><a name="confKeyStoreKeyPassword"><span class="fixed">&lt;KeyStoreKeyPassword&gt;<i>string</i>&lt;/KeyStoreKeyPassword&gt;</span></dd>
-        <dd class="value">Specifies the password used to retrieve the private 
-        key.  Contained by the <a href="#confNameMapping"><span class="fixed">NameMapping</span></a> element when a <span class="fixed">CryptoHandleGenerator</span> type is specified.</dd>
-
-        <dd class="attribute"><a name="confKeyStorePassword"><span class="fixed">&lt;KeyStorePassword&gt;<i>string</i>&lt;/KeyStorePassword&gt;</span></dd>
-        <dd class="value">Specifies the password to access the keystore containing the private key to be used for symmetric encryption.  Contained by the <a href="#confNameMapping"><span class="fixed">NameMapping</span></a> element when a <span class="fixed">CryptoHandleGenerator</span> type is specified.</dd>
-
-        <dd class="attribute"><a name="confKeyStorePath"><span class="fixed">&lt;KeyStorePath&gt;<i>string</i>&lt;/KeyStorePath&gt;</span></dd>
-        <dd class="value">Specifies the location of the keystore containing the private key to be used for symmetric encryption to pass handles between the HS and AA.  Contained by the <a href="#confNameMapping"><span class="fixed">NameMapping</span></a> element when a <span class="fixed">CryptoHandleGenerator</span> type is specified.</dd>
-
-        <dd class="attribute"><a name="confKeyStoreResolver"><span class="fixed">&lt;KeyStoreResolver Id=&quot;<i>string</i>&quot; storeType=&quot;<i>type</i>&quot;&gt;</span></dd>
-        <dd class="value">This element is contained by the <a href="#confCredentials"><span class="fixed">Credentials</span></a> element and to specify a keystore that contains both the certificate and private key for a given set of credentials.  Typically, this will be a Java keystore, with a corresponding type of <span class="fixed">JKS</span>.  <a href="#confRelyingParty"><span class="fixed">RelyingParty</span></a> elements will refer to the <span class="fixed">Id</span> allowing multiple resolver elements to be used to specify different credential storage for different federations or target sites.  It must contain one <a href="#confPath"><span class="fixed">Path</span></a> element, one <a href="#confKeyAlias"><span class="fixed">KeyAlias</span></a> element, and one <a href="#confStorePassword"><span class="fixed">StorePassword</span></a> element; it may optionally contain a <a href="#confKeyPassword"><span class="fixed">KeyPassword</span></a> element or a <a href="#confCertAlias"><span class="fixed">CertAlias</span></a> element.</dd>
+        <dd class="value">This specifies the file containing a private key to be used by a set of credentials.  Valid encodings are <span class="fixed">PEM</span> (the default), <span class="fixed">DER</span>, and <span class="fixed">PKCS12</span>.  Keys are supported in a variety of formats: DER, PEM, encrypted PEM, and encrypted PKCS12.  It resides within the <a href="#confFileResolver"><span class="fixed">FileResolver</span></a> element, should be paired with a <a href="#confCertificate"><span class="fixed">Certificate</span></a> element, and contain a <a href="#confPath"><span class="fixed">Path</span></a> element.</dd>
 
         <dd class="attribute"><a name="confLibrary"><span class="fixed">&lt;Library <span class="mandatory">path=&quot;<i>pathname</i>&quot;</span> fatal=&quot;<i>true/false</i>&quot;/&gt;</span></dd>
         <dd class="value">This element defines an extension library for one of Shibboleth's components when specified within an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element.
 <ul><li class="mandatory"><span class="fixed">path</span>: This designates the complete pathname to where the library is.</li>
-<li><span class="fixed">fatal</span>: If this boolean is set to <span class="fixed">true</span> and the library is not located or fails to load properly, the target will not start.</li>
+<li><span class="fixed">fatal</span>: If set to <span class="fixed">true</span> and the library is not located or fails to load properly, the target will not start. The default is false.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confMemorySessionCache"><span class="fixed">&lt;MemorySessionCache <a href="#confSessionCacheProperties">sessionCacheProperties</a>/&gt;</span></dd>
-        <dd class="value">Shibboleth will cache sessions and received attributes in-memory if this element is part of <span class="fixed">shibboleth.xml</span>.  There's actually a great number of attributes that may be specified; consult the <a href="#confSessionCacheProperties">sessionCacheAttributes</a> section for a full list and descriptions.  This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element.</dd>
+        <dd class="attribute"><a name="confListener"><span class="fixed">&lt;Listener <span class="mandatory">type=&quot;<i>string</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">Specifies a pluggable implementation of a mechanism for communication between the web server and SHAR, specified in the <span class="fixed">type</span> attribute.  This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> and <a href="#confUnixListener"><span class="fixed">UnixListener</span></a> elements.</dd>
+
+        <dd class="attribute"><a name="confMemorySessionCache"><span class="fixed">&lt;MemorySessionCache AAConnectTimeout=&quot;<i>seconds</i>&quot; AATimeout=&quot;<i>seconds</i>&quot; cacheTimeout=&quot;<i>seconds</i>&quot; cleanupInterval=&quot;<i>seconds</i>&quot; defaultLifetime=&quot;<i>seconds</i>&quot; propagateErrors=&quot;<i>true/false</i>&quot; retryInterval=&quot;<i>seconds</i>&quot; strictValidity=&quot;<i>true/false</i>&quot;/&gt;</span></dd>
+        <dd class="value">Shibboleth will cache sessions and received attributes in memory if this element is placed in the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element. This element is mutually exclusive with the <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> and <a href="#confSessionCache"><span class="fixed">SessionCache</span></a> elements.
+<ul>
+<li><span class="fixed">AAConnectTimeout</span>: Time in seconds the target will wait before timing out on the initial connection to an origin to request attributes.  Defaults to <span class="fixed">15</span>.</li>
+<li><span class="fixed">AATimeout</span>: Time in seconds the target will wait before timing out while waiting for attributes from an origin once the initial connection is established.  Defaults to <span class="fixed">30</span>.</li>
+<li><span class="fixed">cacheTimeout</span>: Time in seconds to permit a session to stay in the cache before being purged.  Defaults to <span class="fixed">28800</span>.</li>
+<li><span class="fixed">cleanupInterval</span>: Seconds between runs of the background thread that purges expired sessions.  Defaults to <span class="fixed">300</span>.</li>
+<li><span class="fixed">defaultLifetime</span>: If the attribute assertion doesn't carry an explicit expiration time, the assertion will expire after this time in <span class="fixed">seconds</span> has elapsed.  Defaults to <span class="fixed">1800</span>.</li>
+<li><span class="fixed">propagateErrors</span>: If true, then any errors that occur during the attribute query stage are fatal and will be presented to the user as an error, terminating their session.  If false, any errors that occur during the query are non-fatal, and the
+application will be given older, expired attributes based on the <span class="fixed">strictValidity</span> setting.</p>
+<p>This should generally only be left to false (the default) by deployments that are using real principal names as subjects because attribute retrieval is treated as an optional process.</p></li>
+<li><span class="fixed">retryInterval</span>: Time in seconds between attempts to obtain fresh attributes.  If a query fails, a timer is set, and once the interval elapses, the next user request causes another query. This prevents pointless repeated attempts to query a failed origin. Defaults to <span class="fixed">300</span>.</li>
+<li><span class="fixed">strictValidity</span>: If true, expired attributes will never be made available to the Shibboleth application; if no valid attributes can be obtained, then an empty set is provided.  When false, if a fresh set of attributes cannot be retrieved due to failures, any cached, expired attributes are made available.  Defaults to <span class="fixed">true</span>.</li>
+</ul></dd>
 
-        <dd class="attribute"><a name="confMySQLSessionCache"><span class="fixed">&lt;MySQLSessionCache mysqlTimeout=&quot;<i>seconds</i>&quot; <a href="#confSessionCacheProperties">sessionCacheProperties</a>/&gt;</span></dd>
-        <dd class="value">Shibboleth will cache sessions and received attributes using a MySQL database if this element is part of <span class="fixed">shibboleth.xml</span>.  Arguments may be passed directly to MySQL by populating this element with additional <span class="fixed"><a href="#confArgument">Argument</a></span> elements.  There's actually a great number of attributes that may be specified; consult the <a href="#confSessionCacheProperties">sessionCacheAttributes</a> section for a full list and descriptions.  This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element.
+        <dd class="attribute"><a name="confMySQLSessionCache"><span class="fixed">&lt;MySQLSessionCache mysqlTimeout=&quot;<i>seconds</i>&quot;/&gt;</span></dd>
+        <dd class="value">Shibboleth will back the memory cache of sessions using an embedded MySQL database if this element is placed in the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element.  Arguments may be passed directly to MySQL by populating this element with <span class="fixed"><a href="#confArgument">Argument</a></span> elements. The element may also specify any of the attributes defined for the <a href="#confMemorySessionCache">MemorySessionCache</a> element.  Mutually exclusive with the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> and <a href="#confSessionCache"><span class="fixed">SessionCache</span></a> elements.
 <ul>
-<li><span class="fixed">mysqlTimeout</span>: This specifies a duration in seconds that the target will wait before MySQL requests timeout.  Defaults to 14400.</li>
+<li><span class="fixed">mysqlTimeout</span>: Time in seconds to permit a session to stay in the persistent cache before being purged.  Defaults to <span class="fixed">28800</span>.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confPath"><span class="fixed">&lt;Path <span class="mandatory">name=&quot;<i>pathname</i>&quot;</span> applicationId=&quot;<i>id</i>&quot; requireSession=&quot;<i>true/false</i>&quot; exportAssertion/&gt;</span></dd>
-        <dd class="value">This attribute allows for different application identifiers and session handling to be defined iteratively for subdirectories within a host.  Requests are processed on a best-match basis, with the innermost element taking precedence; for more information, consult blah.  Path elements may be contained by <a href="#confHost"><span class="fixed">Host</span></a> elements or other <a href="#confPath"><span class="fixed">Path</span></a> elements.
+        <dd class="attribute"><a name="confPath"><span class="fixed">&lt;Path <span class="mandatory">name=&quot;<i>pathname</i>&quot;</span> applicationId=&quot;<i>id</i>&quot; requireSession=&quot;<i>true/false</i>&quot; exportAssertion=&quot;<i>true/false</i>&quot;&gt;</span></dd>
+        <dd class="value">This element allows for different application identifiers and session handling to be defined iteratively for subdirectories or documents within a host.  Requests are processed on a best-match basis, with the innermost element taking precedence. Path elements may be contained by <a href="#confHost"><span class="fixed">Host</span></a> elements or other <a href="#confPath"><span class="fixed">Path</span></a> elements.
 <ul>
-<li class="mandatory"><span class="fixed">name</span>: This is the domain name of the host that URL's will contain.  This appended to the <span class="fixed">scheme</span> must match what is contained in the URL for the request to be handled by this element.</li>
-<li><span class="fixed">requireSession</span>: This attribute controls whether the SHIRE will always establish a session before handing off to the application.  If <span class="fixed">true</span>, Shibboleth will force session establishment before this.  If <span class="fixed">false</span>, applications will be responsible for ensuring that sessions are generated if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> without a full understanding of the implications.</li>
-<li><span class="fixed">exportAssertion</span>: When this boolean is <span class="fixed">true</span>, the entire SAML attribute assertion received by          the SHAR is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML; however, it also permits an application to see attributes that may have been filtered by an AAP, or to forward the SAML assertion to a third party.  Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
+<li class="mandatory"><span class="fixed">name</span>: This is the name of the path component or filename to match against the request.</li>
+<li><span class="fixed">requireSession</span>: This attribute controls whether Shibboleth will forcibly establish an authenticated session with the user before handing off the request to the web server or application.  If <span class="fixed">true</span>, Shibboleth will force session establishment.  If <span class="fixed">false</span> (the default), applications are responsible for ensuring that a session exists if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> for protected content without a full understanding of the implications.</li>
+<li><span class="fixed">exportAssertion</span>: When <span class="fixed">true</span>, the entire SAML attribute assertion received from the origin is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML. Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confPolicy"><span class="fixed">&lt;Policy&gt;</span></dd>
-        <dd class="value">This element is the main container for specification of policies for attributes, trust, and federation handling by an application.  It must be contained by the <a href="#confApplications"><span class="fixed">Applications</span></a> and, if contained by an <a href="#confApplication"><span class="fixed">Application</span></a> element, will over-ride the main policy element which would have been inherited by default.  The configuration for policy is defined by these elements, each of which is optional: <a href="#confAttributes"><span class="fixed">Attributes</span></a>, <a href="#confFederationProvider"><span class="fixed">FederationProvider</span></a>, <a href="#confTrustProvider"><span class="fixed">TrustProvider</span></a>, <a href="#confRevocationProvider"><span class="fixed">RevocationProvider</span></a>, and <a href="#confAudiences"><span class="fixed">Audiences</span></a>.</dd>
+        <dd class="attribute"><a name="confPolicy"><span class="fixed">&lt;Policy signRequest=&quot;<i>true/false</i>&quot; signedResponse=&quot;<i>true/false</i>&quot; signedAssertions=&quot;<i>true/false</i>&quot;&gt;</span></dd>
+        <dd class="value">This element is the main container for specifying policies for attributes, trust, and operational metadata by an application.  It must be contained by the <a href="#confApplications"><span class="fixed">Applications</span></a> element and, if contained by an <a href="#confApplication"><span class="fixed">Application</span></a> element, may override portions of the policies which would have been inherited by default.  The configuration for policy is defined by these elements, each of which is optional: <a href="#confAttributes"><span class="fixed">Attributes</span></a>, <a href="#confFederationProvider"><span class="fixed">FederationProvider</span></a>, <a href="#confTrustProvider"><span class="fixed">TrustProvider</span></a>, <a href="#confRevocationProvider"><span class="fixed">RevocationProvider</span></a>, and <a href="#confAudiences"><span class="fixed">saml:Audiences</span></a>.
+<ul>
+<li><span class="fixed">signRequest</span>: If <span class="fixed">true</span>, the target will sign attribute requests that it sends to origins from this application.  This is usually unnecessary, as the TLS/SSL transport can provide authentication more efficiently.</li>
+<li><span class="fixed">signedResponse</span>: If <span class="fixed">true</span>, the target will require that all SAML attribute responses it receives for this application be signed.</li>
+<li><span class="fixed">signedAssertions</span>: If <span class="fixed">true</span>, the target will require that individual SAML assertions it receives for this application be signed.  This may be particularly useful if the application is forwarding the assertion, but requires a liberal (or no) AAP to avoid corrupting the signature.</li>
+</ul></dd>
 
-        <dd class="attribute"><a name="confRequestMap"><span class="fixed">&lt;RequestMap applicationId=&quot;<i>id</i>&quot; requireSession=&quot;<i>true/false</i>&quot; exportAssertion=&quot;<i>true/false</i>&quot;
+        <dd class="attribute"><a name="confRequestMap"><span class="fixed">&lt;RequestMap <span class="mandatory">applicationId=&quot;<i>default</i>&quot;</span> requireSession=&quot;<i>true/false</i>&quot; exportAssertion=&quot;<i>true/false</i>&quot;
 uri=&quot;<i>URI</i>&quot;&gt;</span></dd>
         <dd class="value"><p><b>For a general description of how the target handles incoming requests, please refer to <a href="#1.f.">section 1.f</a>.</b></p><p>Each <span class="fixed">RequestMap</span> element contains a set of hosts, URLs, and applications that all share the same rules on session and assertion requirements in the form of individual <a href="#confHost"><span class="fixed">Host</span></a> elements.  If session requirement or assertion handling conditions varies across that granularity, additional <span class="fixed">RequestMap</span> elements may be specified for them.  Alternatively, these conditions may be specified on <a href="#confPath"><span class="fixed">Path</span></a> and <a href="#confHost"><span class="fixed">Host</span></a> elements within this element which will override these settings.</p>
 <ul>
-<li><span class="fixed">applicationId</span>: If specified, then any queries handled by this request mapping will be considered part of the application <span class="fixed">id</span> as defined in an <a href="#confApplication"><span class="fixed">Application</span></a> element with the same identifier.  If no <span class="fixed">applicationId</span> is specified, then the default specified in the <a href="#confApplications"><span class="fixed">Applications</span></a> element will apply.</li>
-<li><span class="fixed">requireSession</span>: This attribute controls whether the SHIRE will always establish a session before handing off to the application.  If <span class="fixed">true</span>, Shibboleth will force session establishment before this.  If <span class="fixed">false</span>, applications will be responsible for ensuring that sessions are generated if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> without a full understanding of the implications.</li>
-<li><span class="fixed">exportAssertion</span>: When this boolean is <span class="fixed">true</span>, the entire SAML attribute assertion received by          the SHAR is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML; however, it also permits an application to see attributes that may have been filtered by an AAP, or to forward the SAML assertion to a third party.  Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
+<li><span class="fixed">applicationId</span>: Contains a fixed value of "default" to reference the default <a href="#confApplications"><span class="fixed">Applications</span></a> element.</li>
+<li><span class="fixed">requireSession</span>: This attribute controls whether Shibboleth will forcibly establish an authenticated session with the user before handing off the request to the web server or application.  If <span class="fixed">true</span>, Shibboleth will force session establishment.  If <span class="fixed">false</span> (the default), applications are responsible for ensuring that a session exists if necessary, so-called <a href="#1.f.">lazy session establishment</a>.  Most deployments should not specify <span class="fixed">false</span> for protected content without a full understanding of the implications.</li>
+<li><span class="fixed">exportAssertion</span>: When <span class="fixed">true</span>, the entire SAML attribute assertion received from the origin is exported to a CGI request header called <span class="fixed">Shib-Attributes</span>, encoded in <span class="fixed">base64</span>.  This requires an application to be able to parse the raw XML. Defaults to <span class="fixed">false</span>, which most deployments should use.</li>
 </ul></dd>
-        <dd class="attribute"><a name="confRelyingParty"><span class="fixed">&lt;RelyingParty <span class="mandatory">name=&quot;<i>URN</i>&quot; TLS=&quot;<i>id</i> Signing=&quot;id&quot;/</span></span></dd>
-        <dd class="value"><p>One or more <span class="fixed">RelyingParty</span> elements may be contained by individual <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> elements to enumerate relying parties for which an individual set of credentials should be used.  Each one will contain a unique URN specified in transactions conducted with that relying party and may use different credentials for different aspects of the interaction with origins within that relying party.</p>
+
+        <dd class="attribute"><a name="confRelyingParty"><span class="fixed">&lt;RelyingParty <span class="mandatory">name=&quot;<i>string</i>&quot; TLS=&quot;<i>string</i> Signing=&quot;<i>string</i>&quot;</span></span>&gt;</dd>
+        <dd class="value"><p>One or more <span class="fixed">RelyingParty</span> elements may be contained by a <a href="#confCredentialUse"><span class="fixed">CredentialUse</span></a> element to enumerate relying parties for which a distinct set of credentials should be used. The <span class="fixed">TLS</span> and <span class="fixed">Signing</span> attribute values reference the identifiers of credential resolvers defined in <a href="#confCredentialsProvider"><span class="fixed">CredentialsProvider</span></a> elements.</p>
 <ul>
-<li class="mandatory"><span class="fixed">name</span>: This URN will be sent by the target to origins that are covered by this <span class="fixed">RelyingParty</span> definition.  This must match a value that is expected by the origin for proper trust and attribute release to occur.  If there is no direct match, the origin uses metadata to try to find a federation that this target is a member of.</li>
-<li class="mandatory"><span class="fixed">TLS</span>: This specifies the <span class="fixedwidth">Id</span> of the <a href="#confFileResolver"><span class="fixedwidth">FileResolver</span></a> element pointing towards the credentials to be used to initiate the TLS connection over which the attribute request is made of origins within this relying party.</li>
-<li class="mandatory"><span class="fixed">Signing</span>: This specifies the <span class="fixedwidth">Id</span> of the <a href="#confFileResolver"><span class="fixedwidth">FileResolver</span></a> element pointing towards the credentials to be used to sign the attribute request for origins within this relying party.</li>
+<li class="mandatory"><span class="fixed">name</span>: Identifies the origin site or group of sites to which the credentials specified in the element apply.</li>
 </ul>
 </dd>
 
-        <dd class="attribute"><a name="confRequestMapProvider"><span class="fixed">&lt;RequestMapProvider type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLRequestMap&quot;&gt;</span></dd>
-        <dd class="value"><p>This element holds one or more request mapping providers, each of which defines how Shibboleth will perform sessions and access controls for a given mapping of a URL to a path.  There must be one or more <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> elements within this element, each of which represents access controls and session definitions for a URL to pathname mapping.</p><!-- Removed due to complexity:<p>Note that these mappings are only consulted by IIS deployments and Apache deployments where <span class="fixed">apacheConfig</span> in the <a href="#confApache"><span class="fixed">Apache</span></a> element is <span class="fixed">false</span>; otherwise, mappings and access controls are specified using <span class="fixed">httpd.conf</span>.</p>--></dd>
+        <dd class="attribute"><a name="confRequestMapProvider"><span class="fixed">&lt;RequestMapProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.target.provider.XMLRequestMap&quot;</span> uri=&quot;<i>pathname</i>&quot;&gt;</span></dd>
+        <dd class="value"><p>This element specifies a request mapper that defines how Shibboleth will handle sessions and access control for a given request.  For the built-in type &quot;edu.internet2.middleware.shibboleth.target.provider.XMLRequestMap&quot;, there must be a <a href="#confRequestMap"><span class="fixed">RequestMap</span></a> element within this element, or the <span class="fixed">uri</span> attribute must contain the local pathname of an XML file containing one.</p></dd>
 
-        <dd class="attribute"><a name="confSessions"><span class="fixed">&lt;Sessions <span class="mandatory">wayfURL=&quot;<i>URL</i>&quot;<br> 
-shireURL=&quot;<i>URL</i>&quot;</span><br> 
-shireSSL=&quot;<i>true/false</i>&quot;<br> 
-<span class="mandatory">cookieName=&quot;<i>URL</i>&quot;</span><br> 
-cookieProps=&quot;<i>URL</i>&quot;<br> 
-lifetime=&quot;<i>seconds</i>&quot;<br> 
-timeout=&quot;<i>seconds</i>&quot;<br> 
-checkAddress=&quot;<i>true/false</i>&quot;<br>/&gt;</span></dd>
-        <dd class="value">Configuration parameters that affect the way Shibboleth handles sessions for an individual application identifier are bundled in this element, which must be contained by each <a href="#confApplication"><span class="fixed">Application</span></a> and <a href="#confApplications"><span class="fixed">Applications</span></a> element.  Note that these parameters only apply to Shibboleth sessions, and not any sessions applications initiate.
-<ul>
-<li class="mandatory"><span class="fixed">wayfURL</span>: The URL of the <a href="#1.c.">WAYF service</a> responsible for redirecting users accessing this application.</li>
-<li class="mandatory"><p><span class="fixed">shireURL</span>: Specifies the URL of the SHIRE POST URL, or assertion consumer service, at which new sessions are initiated. This can be an absolute URL, or a relative path to be prefixed by the base URL of the web site. Using an absolute URL allows a virtual server to funnel SHIRE requests to a fixed location.</p><p>Note that this URL will result in the cookie named by the <span class="fixed">cookieName</span> and <span class="fixed">cookieProps</span> elements being set, and this cookie must be returned in subsequent requests, so the virtual server's domain name and port must be consistent with the SHIRE's domain name and port for some browsers to properly return the cookie. If default ports are used (and thus left unspecified), browsers will generally return cookies set via SSL to a non-SSL server. If non-default ports are used, it is recommended that this be a relative URL so that each virtual host handles its own cookie operations.</p><p>For Shibboleth to function in IIS, the file extension at the end of this URL must match the value configured into IIS and mapped to the ISAPI extension. This causes the request to be serviced properly, even though no file by that name actually exists.</p></li>
-<li><span class="fixed">shireSSL</span>: This boolean should be <span class="fixed">true</span> when the SHIRE will <b>only</b> accept POST requests over SSL as is strongly recommended; see <a href="#2.c.">section 2.c</a> for more details.</li>
-<li class="mandatory"><span class="fixed">cookieName</span>: Specifies the name given to in-memory session cookies that are associated with this application.</li>
-<li><span class="fixed">cookieProps</span>: A string of cookie properties can be specified using this element which give the browser further instructions about their processing and use.</li>
-<li><span class="fixed">lifetime</span>: Specifies the duration in seconds of the Shibboleth session; this does not affect the lifetime of application sessions initiated subsequently.  If none is specified, sessions are unlimited by time.</li>
-<li><span class="fixed">timeout</span>: If this duration in seconds elapses following the last request in a session, the session will be considered to have expired and a new session must be initiated for future requests.  Defaults to no timeout.</li>
-<li><span class="fixed">checkAddress</span>: If <span class="fixed">true</span>, Shibboleth will check client addresses for impersonation protection.  In most circumstances, this should be enabled to prevent certain attacks          concerning stolen cookies, but this can cause problems for users behind proxies or NAT devices. Defaults to <span class="fixed">false</span>.
-</ul></dd>
+        <dd class="attribute"><a name="confRevocationProvider"><span class="fixed">&lt;RevocationProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLRevocation&quot;</span> uri=&quot;<i>pathname</i>&quot;&gt;</span></dd>
+        <dd class="value">This element, when specified within a <a href="#confPolicy"><span class="fixed">Policy</span></a> element, points to revocation metadata either inline within the element or in a local XML file. Federations will often publish signed XML files for targets to download periodically. This should be updated regularly; see <a href="#4.g.">section 4.g</a> for further details.
+        <p>If an <a href="#confApplication"><span class="fixed">Application</span></a> does not include any <span class="fixed">RevocationProvider</span> elements, the default set is used.</p>
 
-        <dd class="attribute"><a name="confSessionCacheProperties"><span class="fixed">&lt;SessionCacheProperties AAConnectTimeout=&quot;<i>seconds</i>&quot; AATimeout=&quot;<i>seconds</i>&quot; cacheTimeout=&quot;<i>seconds</i>&quot; cleanupInterval=&quot;<i>seconds</i>&quot; defaultLifetime=&quot;<i>seconds</i>&quot; propagateErrors=&quot;<i>true/false</i>&quot; retryInterval=&quot;<i>seconds</i>&quot; strictValidity=&quot;<i>true/false</i>&quot;</span></dd>
-        <dd class="value">These attributes may all be specified as part of either the <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> element or the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element.  They are all optional.
+        <dd class="attribute"><a name="confSessionCache"><span class="fixed">&lt;SessionCache <span class="mandatory">type=&quot;<i>string</i>&quot;</span>&gt;</span></dd>
+        <dd class="value">Use this element to specify a pluggable session cache implementation of the specified <span class="fixed">type</span> This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> and <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> elements.
+            <p>Any plugin should support the basic attributes defined by the <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element.</p></dd>
+
+        <dd class="attribute"><a name="confSessions"><span class="fixed">&lt;Sessions
+<span class="mandatory">wayfURL=&quot;<i>URL</i>&quot;
+shireURL=&quot;<i>URL</i>&quot;</span>
+shireSSL=&quot;<i>true/false</i>&quot;
+cookieName=&quot;<i>URL</i>&quot;
+cookieProps=&quot;<i>URL</i>&quot;
+lifetime=&quot;<i>seconds</i>&quot;
+timeout=&quot;<i>seconds</i>&quot;
+checkAddress=&quot;<i>true/false</i>&quot;&gt;</span></dd>
+        <dd class="value">Configuration parameters that affect the way Shibboleth handles sessions for an individual application are bundled in this element, which must be included in each <a href="#confApplication"><span class="fixed">Application</span></a> and <a href="#confApplications"><span class="fixed">Applications</span></a> element.  Note that these parameters only apply to Shibboleth sessions, and not any sessions applications manage on their own behalf.
 <ul>
-<li><span class="fixed">AAConnectTimeout</span>: Specifies in seconds the duration the target will wait before timing out on the initial connection to an origin to request attributes.  Defaults to <span class="fixed">15</span>.</li>
-<li><span class="fixed">AATimeout</span>: Specifies in seconds the duration the target will wait before timing out on receiving attributes from the origin once the initial connection is established.  Defaults to <span class="fixed">30</span>.</li>
-<li><span class="fixed">cacheTimeout</span>: The SHAR will make a fresh attribute request if it receives no response from the cache within this duration.  Defaults to <span class="fixed">28800</span>.</li>
-<li><span class="fixed">cleanupInterval</span>: The cache will be purged of expired attribute sets with a frequency <span class="fixed">seconds</span>.  Defaults to <span class="fixed">300</span>.</li>
-<li><span class="fixed">defaultLifetime</span>: If the assertion containing the attributes doesn't carry an expiration time, the assertion will expire after this time in <span class="fixed">seconds</span> has elapsed.  Defaults to <span class="fixed">1800</span>.</li>
-<li><span class="fixed">propagateErrors</span>: If true, then any errors that occur during the attribute query are fatal and will be presented to the user as an error.  If false, any errors that occur during the query are non-fatal, and the
-application will get attributes returned to it based on the population of <span class="fixed">strictValidity</span>.</p><p>This should generally only be treated as false by deployments that are using real principal names as subjects because attribute retrieval may be treated as optional or omitted entirely.</p></li>
-<li><span class="fixed">retryInterval</span>: This is the amount of time between attempts to get fresh attributes.  If a query fails, a timer is set, and once the interval elapses, the next user request causes another query. This prevents pointless repeated attempts to query a failed AA.</li>
-<li><span class="fixed">strictValidity</span>: If true, no expired attributes will ever be made available to the Shibboleth application; if no valid attributes can be obtained, then an empty set of attributes is provided.  When false, if no fresh set of attributes can be retrieved due to failures, cached attributes are made available, regardless of whether they have expired or not.  Defaults to <span class="fixed">true</span>.</li>
+<li class="mandatory"><span class="fixed">wayfURL</span>: The URL of the <a href="#1.c.">WAYF service</a> responsible for redirecting users accessing this application to their identity provider (origin).</li>
+<li class="mandatory"><p><span class="fixed">shireURL</span>: Specifies the SHIRE URL, or assertion consumer service, at which new sessions are initiated or lazy sessions are triggered. This can be an absolute URL, or a relative path to be prefixed by the base URL of the virtual host. Using an absolute URL allows a virtual server to funnel requests to a fixed location, to force use of SSL, for example.</p>
+    <p>Note that this URL issues the session cookie set on behalf of the application, and this cookie must be returned in subsequent requests, so the virtual host's domain name and port must be consistent with this domain name and port for some browsers to properly return the cookie. If default ports are used (and thus left unspecified), browsers will generally return cookies set via SSL to a non-SSL server. If non-default ports are used, it is recommended that this be a relative URL so that each virtual host handles its own cookie operations.</p>
+    <p>For Shibboleth to function properly in IIS, the file extension at the end of this URL must match the value configured into IIS and mapped to the ISAPI extension. This causes the request to be serviced properly, even though no file by that name actually exists.</p></li>
+<li><span class="fixed">shireSSL</span>: If <span class="fixed">true</span> (the default), the application will <b>only</b> accept new session requests over SSL, as is strongly recommended; see <a href="#2.c.">section 2.c</a> for more details.</li>
+<li><span class="fixed">cookieName</span>: Optionally specifies the name given to in-memory session cookies that are associated with this application. If ommitted, Shibboleth will generate a cookie name for you of the form _shibsession_&lt;Application ID&gt;</li>
+<li><span class="fixed">cookieProps</span>: A string of additional Set-Cookie properties can be specified using this element which give the browser further instructions about cookie processing and use. Always begin with a semicolon to delineate from the session ID value.</li>
+<li><span class="fixed">lifetime</span>: Duration in seconds of the Shibboleth session; this does not affect the lifetime of application sessions initiated independently of Shibboleth.  Defaults to 3600. If 0 is specified, sessions are infinite, subject to purging by the cache.</li>
+<li><span class="fixed">timeout</span>: If the duration in seconds elapses following the last request in a session, the session will be expired for inactivity and a new session must be initiated upon the next request.  Defaults to 1800. If 0 is specified, there is no inactivity timeout</li>
+<li><span class="fixed">checkAddress</span>: If <span class="fixed">true</span> (the default), Shibboleth will check the browser's client address to insure that session cookies are issued and used by a consistent client address.  In most circumstances, this should be enabled to help prevent attacks using stolen cookies, but this can cause problems for users behind proxies or NAT devices.</li>
 </ul></dd>
 
         <dd class="attribute"><a name="confSHAR"><span class="fixed">&lt;SHAR logger=&quot;<i>pathname</i>&quot;&gt;</span></dd>
-        <dd class="value">This is the container element for configuration information pertaining to the SHAR, the main component of the target, which is responsible for requesting information about browser users from AA's.  Its single attribute, <span class="fixed">logger</span>, points toward a Log4J logger file that can be used by the SHAR.  It is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element and may contain an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element specifying additional libraries.</p><p>It must contain either a <a href="#confUnixListener"><span class="fixed">UnixListener</span></a> element to listen to the Apache module on a UNIX domain socket or a <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> element to listen on a TCP port.  Session caching for this SHAR must also be specified using a <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element to use in-memory session caching or a <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> element to store session information in a MySQL database.</dd>
+        <dd class="value">This is the container element for configuration information pertaining to the SHAR, the target component responsible for most attribute and session processing.  Its single attribute, <span class="fixed">logger</span>, points to a Log4J-format property configuration file that controls SHAR logging behavior.  It is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element and may contain an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element specifying additional libraries.</p>
+            <p>It must contain either a <a href="#confUnixListener"><span class="fixed">UnixListener</span></a> element to listen to the Apache module on a UNIX domain socket or a <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> element to listen on a TCP port.  Session caching must also be specified using a <a href="#confMemorySessionCache"><span class="fixed">MemorySessionCache</span></a> element to use in-memory session caching or a <a href="#confMySQLSessionCache"><span class="fixed">MySQLSessionCache</span></a> element to backup session information in a MySQL database.</p></dd>
 
-        <dd class="attribute"><a name="confShibbolethTargetConfig"><span class="fixed">&lt;ShibbolethTargetConfig&gt;</span></dd>
-        <dd class="value">This is the main container element for the target configuration and must be present once and only once.  It must always contain a <a href="#confSHAR"><span class="fixed">SHAR</span></a> element, a <a href="#confSHIRE"><span class="fixed">SHIRE</span></a> element, an <a href="#confApplications"><span class="fixed">Applications</span></a> element, one or more <a href="#confCredentialsProvider"><span class="fixed">CredentialsProvider</span></a> elements, and optionally an <a href="#confExtensions"><span class="fixed">Extensions</span></a>.</dd>
+        <dd class="attribute"><a name="confShibbolethTargetConfig"><span class="fixed">&lt;ShibbolethTargetConfig clockSkew=&quot;integer&quot;&gt;</span></dd>
+        <dd class="value">This is the root element for target configuration and must be present once and only once.  It must always contain a <a href="#confSHAR"><span class="fixed">SHAR</span></a> element, a <a href="#confSHIRE"><span class="fixed">SHIRE</span></a> element, an <a href="#confApplications"><span class="fixed">Applications</span></a> element, one or more <a href="#confCredentialsProvider"><span class="fixed">CredentialsProvider</span></a> elements, and optionally an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element.
+<ul><li><span class="fixed">clockSkew</span>: Controls allowed clock skew in seconds between target and origin servers when evaluating times sent in messages. Defaults to 180, and should be as small as practical.</li>
+</ul></dd>
 
         <dd class="attribute"><a name="confSHIRE"><span class="fixed">&lt;SHIRE logger=&quot;<i>pathname</i>&quot;&gt;</span></dd>
-        <dd class="value">This is the container element for configuration information pertaining to the SHIRE, the part of the target that establishes sessions and passes on received attributes to applications.  Its single attribute, <span class="fixed">logger</span>, points toward a Log4J logger file that can be used by the SHIRE.  It is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element and may contain an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element specifying additional libraries.</p><p>It must contain one <a href="#confImplementation"><span class="fixed">Implementation</span></a> element, within which configuration for the SHIRE which varies by platform will be specified.</p><p>One or more <a href="#confRequestMapProvider"><span class="fixed">RequestMapProvider</span></a> elements must be contained by this element, which serves to provide protection on individual pathnames served by the webserver.</dd>
+        <dd class="value">This is the container element for configuration information pertaining to the SHIRE, the part of the target that integrates into the web server environment.  Its single attribute, <span class="fixed">logger</span>, points to a Log4J-format property configuration file that controls SHIRE logging behavior.  It is contained by the <a href="#confShibbolethTargetConfig"><span class="fixed">ShibbolethTargetConfig</span></a> element and may contain an <a href="#confExtensions"><span class="fixed">Extensions</span></a> element specifying additional libraries.</p>
+            <p>It may contain an <a href="#confImplementation"><span class="fixed">Implementation</span></a> element, within which configuration for the SHIRE which varies by platform will be specified.</p>
+            <p>It may contain a <a href="#confRequestMapProvider"><span class="fixed">RequestMapProvider</span></a> element, which provides fine-grained control over aspects of target behavior at a host, path, or document level.</dd>
 
-        <dd class="attribute"><a name="confSite"><span class="fixed">&lt;Site <span class="mandatory">id=&quot;<i>IID</i>&quot; host=&quot;<i>fqdn</i>&quot;</span>/&gt;</span></dd>
+        <dd class="attribute"><a name="confSite"><span class="fixed">&lt;Site <span class="mandatory">id=&quot;<i>INSTANCE_ID</i>&quot; host=&quot;<i>fqdn</i>&quot;</span>/&gt;</span></dd>
         <dd class="value">This element is placed in the <a href="#confISAPI"><span class="fixed">ISAPI</span></a> element to specify a mapping from individual instance ID's to respective vhost domain names.</dd>
 
         <dd class="attribute"><a name="confTCPListener"><span class="fixed">&lt;TCPListener <span class="mandatory">address=&quot;<i>pathname</i>&quot;  port=&quot;<i>integer</i>&quot;</span> acl=&quot;<i>ip</i>&quot;&gt;</span></dd>
-        <dd class="value">This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> element.  It allows the SHAR to instead listen to the Apache module over TCP.
+        <dd class="value">This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> and <a href="#confListener"><span class="fixed">Listener</span></a> elements.  It allows the SHAR to communicate with the web-server component using TCP.
 <ul><li class="mandatory"><span class="fixed">address</span>: Specifies the address of the listener.</li>
 <li class="mandatory"><span class="fixed">port</span>: Specifies the TCP port on which the SHAR will listen.</li>
-<li><span class="fixed">acl</span>: By default, the SHAR will only listen to Apache requests from 127.0.0.1 (localhost).  This should generally not be specified, but could be useful in some scenarios: if there were no way to plug a server farm into a shared session cache plugin, the server farm could all point at a networked SHAR service that writes to non-shared storage.  There is no wildcarding.</li>
+<li><span class="fixed">acl</span>: By default, the SHAR will only listen to requests from 127.0.0.1 (localhost).  This should generally not be specified except in test environments.</li>
 </ul></dd>
 
-        <dd class="attribute"><a name="confTrustProvider"><span class="fixed">&lt;TrustProvider type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLTrust&quot; uri=&quot;<i>pathname</i>&quot;/&gt;</span></dd>
-        <dd class="value">This element, when specified within a <a href="#confPolicy"><span class="fixed">Policy</span></a> element, provides information on signing keys and certificates for use in interactions with AA's.  This should be updated regularly; see <a href="#4.g.">section 4.g</a> for further details.</dd>
+        <dd class="attribute"><a name="confTrustProvider"><span class="fixed">&lt;TrustProvider <span class="mandatory">type=&quot;edu.internet2.middleware.shibboleth.common.provider.XMLTrust&quot;</span> uri=&quot;<i>pathname</i>&quot;&gt;</span></dd>
+        <dd class="value">This element, when specified within a <a href="#confPolicy"><span class="fixed">Policy</span></a> element, points to trust metadata either inline within the element or in a local XML file. Federations will often publish signed XML files for targets to download periodically. This should be updated regularly; see <a href="#4.g.">section 4.g</a> for further details.
+        <p>If an <a href="#confApplication"><span class="fixed">Application</span></a> does not include any <span class="fixed">TrustProvider</span> elements, the default set is used.</p>
 
-        <dd class="attribute"><a name="confUnixListener"><span class="fixed">&lt;UnixListener address=&quot;<i>pathname</i>&quot;/&gt;</span></dd>
-        <dd class="value">Use this element to specify a UNIX domain socket located at the <span class="fixed">pathname</span> specified in the <span class="fixed">address</span> attribute the SHAR should listen for Apache module requests on rather than on a TCP port.  This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> element.  <span class="fixed">UnixListener</span> cannot be specified for Windows-based installations.</dd>
+        <dd class="attribute"><a name="confUnixListener"><span class="fixed">&lt;UnixListener address=&quot;<i>pathname</i>&quot;&gt;</span></dd>
+        <dd class="value">Use this element to specify a UNIX domain socket located at the <span class="fixed">pathname</span> specified in the <span class="fixed">address</span> attribute at which the SHAR should listen for requests.  This element must be contained by the <a href="#confSHAR"><span class="fixed">SHAR</span></a> element and is mutually exclusive with the <a href="#confTCPListener"><span class="fixed">TCPListener</span></a> and <a href="#confListener"><span class="fixed">Listener</span></a> elements.  <span class="fixed">UnixListener</span> cannot be specified for Windows-based installations.</dd>
 
 </dl></blockquote>
 <h4><a name="4.b."></a>4.b. Dynamic Error Page Generation</h4>