1 <?xml version="1.0" encoding="UTF-8"?>
3 <xsd:schema targetNamespace="urn:mace:shibboleth:2.0:idp:profile-handler" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
4 xmlns="urn:mace:shibboleth:2.0:idp:profile-handler" xmlns:service="urn:mace:shibboleth:2.0:services"
5 elementFormDefault="qualified">
7 <xsd:include schemaLocation="classpath:/schema/shibboleth-2.0-profile-handler.xsd" />
9 <xsd:import namespace="urn:mace:shibboleth:2.0:services"
10 schemaLocation="classpath:/schema/shibboleth-2.0-services.xsd" />
14 This schema specifies the configuration options for Shibboleth IdP profile handlers.
18 <xsd:complexType name="IdPProfileHandlerManager">
20 <xsd:documentation>Definition for the basic Shibboleth profile handler manager service.</xsd:documentation>
23 <xsd:extension base="service:ReloadableServiceType" />
27 <xsd:element name="ProfileHandlerGroup">
29 <xsd:documentation>Root of a profile handler configuration file.</xsd:documentation>
33 <xsd:element name="ErrorHandler" type="ErrorHandlerType" />
34 <xsd:element name="ProfileHandler" type="RequestHandlerType" minOccurs="0" maxOccurs="unbounded" />
35 <xsd:element name="LoginHandler" type="LoginHandlerType" minOccurs="0" maxOccurs="unbounded" />
40 <xsd:complexType name="Status">
42 <xsd:documentation>Basic handler that returns a general status of the IdP.</xsd:documentation>
45 <xsd:extension base="RequestURIMappedProfileHandlerType" />
49 <xsd:complexType name="SAMLMetadata">
51 <xsd:documentation>Basic handler that returns a general status of the IdP.</xsd:documentation>
54 <xsd:extension base="RequestURIMappedProfileHandlerType">
55 <xsd:attribute name="metadataFile" type="xsd:string" use="required">
57 <xsd:documentation>Location of the static IdP metadata file.</xsd:documentation>
64 <xsd:complexType name="SAML2SSO">
66 <xsd:documentation>Configuration type for SAML 2 SSO profile handlers.</xsd:documentation>
69 <xsd:extension base="SAML2ProfileHandler">
70 <xsd:attribute name="authenticationManagerPath" type="xsd:string" default="/AuthnEngine">
73 The context relative path to the authentication manager used by this profile handler. This
74 should match the URL pattern given in the web.xml
82 <xsd:complexType name="SAML2AttributeQuery">
84 <xsd:documentation>Configuration type for SAML 2 Attribute Query profile handlers.</xsd:documentation>
87 <xsd:extension base="SAML2ProfileHandler" />
91 <xsd:complexType name="SAML2ArtifactResolution">
93 <xsd:documentation>Configuration type for SAML 2 artifact resolution profile handlers.</xsd:documentation>
96 <xsd:extension base="SAML2ProfileHandler">
97 <xsd:attribute name="artifactMapRef" type="xsd:string" default="shibboleth.ArtifactMap">
100 Reference to SAMLArtifactMap used by handler to resolve artifact strings into artifact
106 </xsd:complexContent>
109 <xsd:complexType name="SAML2ProfileHandler" abstract="true">
111 <xsd:documentation>Base type for SAML 2 profile handlers.</xsd:documentation>
114 <xsd:extension base="SAMLProfileHandler" />
115 </xsd:complexContent>
118 <xsd:complexType name="ShibbolethSSO">
120 <xsd:documentation>Configuration type for Shibboleth 1 SSO profile handlers.</xsd:documentation>
123 <xsd:extension base="SAML1ProfileHandler">
124 <xsd:attribute name="authenticationManagerPath" type="xsd:string" default="/AuthnEngine">
127 The context relative path to the authentication manager used by this profile handler. This
128 should match the URL pattern given in the web.xml
133 </xsd:complexContent>
136 <xsd:complexType name="SAML1AttributeQuery">
138 <xsd:documentation>Configuration type for SAML 1 Attribute Query profile handlers.</xsd:documentation>
141 <xsd:extension base="SAML1ProfileHandler" />
142 </xsd:complexContent>
145 <xsd:complexType name="SAML1ArtifactResolution">
147 <xsd:documentation>Configuration type for SAML 1 artifact resolution profile handlers.</xsd:documentation>
150 <xsd:extension base="SAML1ProfileHandler">
151 <xsd:attribute name="artifactMapRef" type="xsd:string" default="shibboleth.ArtifactMap">
154 Reference to SAMLArtifactMap used by handler to resolve artifact strings into artifact
160 </xsd:complexContent>
163 <xsd:complexType name="SAML1ProfileHandler" abstract="true">
165 <xsd:documentation>Base type for SAML 1 profile handlers.</xsd:documentation>
168 <xsd:extension base="SAMLProfileHandler" />
169 </xsd:complexContent>
172 <xsd:complexType name="SAMLProfileHandler" abstract="true">
174 <xsd:documentation>Base type for Shibboleth IdP SAML profile handlers.</xsd:documentation>
177 <xsd:extension base="IdPProfileHandlerType">
178 <xsd:attribute name="idGeneratorId" type="xsd:string" default="shibboleth.IdGenerator">
181 The component ID of a generator used to generated things like response and assertion IDs.
183 This setting should not be changed from its default unless the deployer fully understands
184 the inter-relationship between IdP components.
188 <xsd:attribute name="inboundBinding" type="xsd:anyURI" use="required">
190 <xsd:documentation>The SAML message binding used by inbound messages.</xsd:documentation>
193 <xsd:attribute name="outboundBindingEnumeration">
196 An ordered list of outbound bindings supported by this profile handler. The order provided
197 establishes the precedence given the bindings such that, from the left to right, the first
198 binding also supported by the relying party will be used.
202 <xsd:list itemType="xsd:anyURI" />
206 </xsd:complexContent>
209 <xsd:complexType name="IdPProfileHandlerType" abstract="true">
211 <xsd:documentation>Base type for IdP profile handlers.</xsd:documentation>
214 <xsd:extension base="ShibbolethProfileHandlerType" />
215 </xsd:complexContent>
218 <xsd:complexType name="PreviousSession">
220 <xsd:extension base="LoginHandlerType">
221 <xsd:attribute name="servletPath" type="xsd:string">
224 Optional servlet path to which the browser may be redirected.
228 <xsd:attribute name="reportPreviousSessionAuthnMethod" type="xsd:boolean" default="false">
231 Whether this login handler should report its authentication method as PreviousSession or the
232 authentication method requested by the peer.
236 <xsd:attribute name="supportsPassiveAuthentication" type="xsd:boolean" default="false">
239 Whether this login handler, when redirecting to a servlet, support passives authentication.
244 </xsd:complexContent>
247 <xsd:complexType name="RemoteUser">
249 <xsd:extension base="LoginHandlerType">
250 <xsd:attribute name="protectedServletPath" type="xsd:string" default="/Authn/RemoteUser">
253 The servlet context path to the
254 edu.internet2.middleware.shibboleth.idp.authn.provider.RemoteUserAuthServlet instance
255 protected by the container or web server.
260 </xsd:complexContent>
263 <xsd:complexType name="UsernamePassword">
265 <xsd:extension base="LoginHandlerType">
266 <xsd:attribute name="jaasConfigurationLocation" type="xsd:anyURI">
269 Location of the JAAS configuration. If this attribute is used it will usually contain a file
270 URL to a configuration on the local filesystem. However, this attribute need not be used and
271 this information can be set within the VM in any manner supported by the JVM/container
276 <xsd:attribute name="authenticationServletURL" type="xsd:string" default="/Authn/UserPassword">
279 The servlet context path to the
280 edu.internet2.middleware.shibboleth.idp.authn.provider.UsernamePasswordAuthenticationServlet
281 that will authenticate the user.
286 </xsd:complexContent>
289 <xsd:complexType name="IPAddress">
291 <xsd:extension base="LoginHandlerType">
293 <xsd:element name="IPEntry" type="xsd:string" maxOccurs="unbounded">
296 An IP addresses in CIDR notation. For example, a single IP address of 192.168.1.1 would
297 have the CIDR notation of 192.168.1.1/32. For the entire 192.168.0.0 class B network,
298 the CIDR notation would be 192.168.0.0/16.
303 <xsd:attribute name="username" type="xsd:string">
306 The username that will be presented to the IdP for all IP-address authenticated users.
310 <xsd:attribute name="defaultDeny" type="xsd:boolean">
313 If defaultDeny is true then only the IP addresses listed will be "authenticated." If
314 defaultDeny is false, then all IP addresses except those listed will be authenticated.
319 </xsd:complexContent>
322 <xsd:complexType name="LoginHandlerType" abstract="true">
324 <xsd:documentation>Base type for authentication handler types.</xsd:documentation>
327 <xsd:element name="AuthenticationMethod" type="xsd:string" maxOccurs="unbounded">
330 The authentication methods supported by this handler. In SAML these methods represent the SAML 2
331 authentication contexts class and declaration reference URIs.
336 <xsd:attribute name="authenticationDuration" type="xsd:positiveInteger" default="30">
339 The length of time, in minutes, that an authentication performed by this handler should be
340 considered active. After which time a user, previously authenticated by this handler, must
341 re-authenticate in order to assert the authentication method again.