Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents


Overview

Identified by type="XML", this RequestMapper provides a portable XML syntax for configuring settings based on URL host, path, and query string information. It does not permit settings to be defined in the web server's configuration and will not honor them if they're present.

...

Note that the actual settings that the RequestMapper supports aren't documented here because they don't show up in this element, but rather the <RequestMap> element and its various children.

...

It supports all of the attributes common to all reloadable configuration resources:

Include Page
ReloadableConfigurationAttributes
ReloadableConfigurationAttributes

Child Elements

The following child element must be provided, either inline (the most common way), or as the root element of a local or remote XML resource to load from, which would be specified via the attribute(s) above.

Name

Cardinality

Description

<RequestMap>

1

Root element of configuration

When a non-inline configuration is used, it supports the following child elements common to all reloadable configuration resources.

Include Page
ReloadableConfigurationElements
ReloadableConfigurationElements

Examples

The most common observed pattern is the "inline" case, and the Windows-installed defaults includes something similar to this example (but it specifies the type as Native instead, as noted above, simply to allow for a Windows install to be easily plugged into Apache. As you can see, there are no bits of content in the root element apart from the type, and the rest is devolved to the required root element, the <RequestMap>, which is documented separately.

Inline Example
Code Block
languagexml
titleInline Example
<RequestMapper type="XML">
    <RequestMap>
        <Host name="sp.example.org">
            <Path name="secure" authType="shibboleth" requireSession="true"/>
        </Host>
        <!-- Example of a second vhost mapped to a different applicationId. -->
        <!--
        <Host name="admin.example.org" applicationId="admin" authType="shibboleth" requireSession="true"/>
        -->
    </RequestMap>
</RequestMapper>

Alternatively, here's an example of moving the RequestMapper configuration into a separate file, and it is equivalent to the XML above in terms of the RequestMapper behavior.

...

...

Pointer to External FIle in shibboleth2.xml
Code Block
languagexml
<RequestMapper type="XML" path="request-mapper.xml" />
request-mapper.xml
Code Block
languagexmltitlerequest-mapper.xml
<RequestMapper xmlns="urn:mace:shibboleth:3.0:native:sp:config">
    <Host name="sp.example.org">
        <Path name="secure" authType="shibboleth" requireSession="true"/>
    </Host>
    <!-- Example of a second vhost mapped to a different applicationId. -->
    <!--
    <Host name="admin.example.org" applicationId="admin" authType="shibboleth" requireSession="true"/>
    -->
</RequestMap>

...