<simpleType name="listOfURIs">\r
<list itemType="anyURI"/>\r
</simpleType>\r
+\r
+ <simpleType name="bindingBoolean">\r
+ <restriction base="string">\r
+ <enumeration value="true"/>\r
+ <enumeration value="false"/>\r
+ <enumeration value="front"/>\r
+ <enumeration value="back"/>\r
+ </restriction>\r
+ </simpleType>\r
\r
<complexType name="PluggableType">\r
<sequence>\r
<element ref="conf:AccessControl"/>\r
<element ref="conf:AccessControlProvider"/>\r
</choice>\r
- <element ref="conf:Host" minOccurs="0" maxOccurs="unbounded"/>\r
+ <choice minOccurs="0" maxOccurs="unbounded">\r
+ <element ref="conf:Host"/>\r
+ <element ref="conf:HostRegex"/>\r
+ </choice>\r
</sequence>\r
<attribute name="applicationId" type="conf:string" fixed="default"/>\r
<attributeGroup ref="conf:ContentSettings"/>\r
<element ref="conf:AccessControl"/>\r
<element ref="conf:AccessControlProvider"/>\r
</choice>\r
- <element ref="conf:Path" minOccurs="0" maxOccurs="unbounded"/>\r
+ <choice minOccurs="0" maxOccurs="unbounded">\r
+ <element ref="conf:Path"/>\r
+ <element ref="conf:PathRegex"/>\r
+ </choice>\r
</sequence>\r
<attribute name="scheme">\r
<simpleType>\r
</attribute>\r
<attribute name="name" type="conf:string" use="required"/>\r
<attribute name="port" type="unsignedInt"/>\r
- <attribute name="applicationId" type="conf:string"/>\r
+ <attribute name="applicationId" type="conf:string"/>\r
<attributeGroup ref="conf:ContentSettings"/>\r
</complexType>\r
</element>\r
+ \r
+ <element name="HostRegex">\r
+ <complexType>\r
+ <sequence>\r
+ <choice minOccurs="0">\r
+ <element ref="conf:htaccess"/>\r
+ <element ref="conf:AccessControl"/>\r
+ <element ref="conf:AccessControlProvider"/>\r
+ </choice>\r
+ <choice minOccurs="0" maxOccurs="unbounded">\r
+ <element ref="conf:Path"/>\r
+ <element ref="conf:PathRegex"/>\r
+ </choice>\r
+ </sequence>\r
+ <attribute name="regex" type="conf:string" use="required"/>\r
+ <attribute name="ignoreCase" type="boolean" default="true"/>\r
+ <attribute name="applicationId" type="conf:string"/>\r
+ <attributeGroup ref="conf:ContentSettings"/>\r
+ </complexType>\r
+ </element>\r
\r
<element name="Path">\r
<complexType>\r
<element ref="conf:AccessControl"/>\r
<element ref="conf:AccessControlProvider"/>\r
</choice>\r
- <element ref="conf:Path" minOccurs="0" maxOccurs="unbounded"/>\r
+ <choice minOccurs="0" maxOccurs="unbounded">\r
+ <element ref="conf:Path"/>\r
+ <element ref="conf:PathRegex"/>\r
+ </choice>\r
</sequence>\r
- <attribute name="name" type="conf:string" use="required"/>\r
- <attribute name="applicationId" type="conf:string"/>\r
- <attributeGroup ref="conf:ContentSettings"/>\r
+ <attribute name="name" type="conf:string" use="required"/>\r
+ <attribute name="applicationId" type="conf:string"/>\r
+ <attributeGroup ref="conf:ContentSettings"/>\r
</complexType>\r
</element>\r
+\r
+ <element name="PathRegex">\r
+ <complexType>\r
+ <sequence>\r
+ <choice minOccurs="0">\r
+ <element ref="conf:htaccess"/>\r
+ <element ref="conf:AccessControl"/>\r
+ <element ref="conf:AccessControlProvider"/>\r
+ </choice>\r
+ </sequence>\r
+ <attribute name="regex" type="conf:string" use="required"/>\r
+ <attribute name="ignoreCase" type="boolean" default="true"/>\r
+ <attribute name="applicationId" type="conf:string"/>\r
+ <attributeGroup ref="conf:ContentSettings"/>\r
+ </complexType>\r
+ </element>\r
\r
<element name="Applications">\r
<annotation>\r
<complexType>\r
<sequence>\r
<element ref="conf:Sessions"/>\r
- <element ref="conf:Errors"/>\r
+ <element ref="conf:Errors" minOccurs="0"/>\r
<element ref="conf:DefaultRelyingParty"/>\r
+ <element ref="conf:Notify" minOccurs="0" maxOccurs="unbounded"/>\r
<element ref="saml:Audience" minOccurs="0" maxOccurs="unbounded"/>\r
<element name="MetadataProvider" type="conf:PluggableType"/>\r
<element name="TrustEngine" type="conf:PluggableType"/>\r
<attribute name="id" type="conf:string" fixed="default"/>\r
<attribute name="entityID" type="anyURI" use="required"/>\r
<attribute name="policyId" type="conf:string" use="required"/>\r
- <attribute name="homeURL" type="anyURI" default="/"/>\r
- <attribute name="REMOTE_USER" type="conf:listOfStrings"/>\r
- <attribute name="unsetHeaders" type="conf:listOfStrings"/>\r
- <anyAttribute namespace="##other" processContents="lax"/>\r
+ <attributeGroup ref="conf:ApplicationGroup"/>\r
+ <anyAttribute namespace="##other" processContents="lax"/>\r
</complexType>\r
</element>\r
\r
<element ref="conf:Sessions" minOccurs="0"/>\r
<element ref="conf:Errors" minOccurs="0"/>\r
<element ref="conf:DefaultRelyingParty" minOccurs="0"/>\r
+ <element ref="conf:Notify" minOccurs="0" maxOccurs="unbounded"/>\r
<element ref="saml:Audience" minOccurs="0" maxOccurs="unbounded"/>\r
<element name="MetadataProvider" type="conf:PluggableType" minOccurs="0"/>\r
<element name="TrustEngine" type="conf:PluggableType" minOccurs="0"/>\r
<attribute name="id" type="conf:string" use="required"/>\r
<attribute name="entityID" type="anyURI"/>\r
<attribute name="policyId" type="conf:string"/>\r
- <attribute name="homeURL" type="anyURI" default="/"/>\r
- <attribute name="REMOTE_USER" type="conf:listOfStrings"/>\r
- <attribute name="unsetHeaders" type="conf:listOfStrings"/>\r
+ <attributeGroup ref="conf:ApplicationGroup"/>\r
<anyAttribute namespace="##other" processContents="lax"/>\r
</complexType>\r
</element>\r
\r
+ <attributeGroup name="ApplicationGroup">\r
+ <attribute name="homeURL" type="anyURI" default="/"/>\r
+ <attribute name="REMOTE_USER" type="conf:listOfStrings"/>\r
+ <attribute name="unsetHeaders" type="conf:listOfStrings"/>\r
+ <attribute name="redirectErrors" type="anyURI"/>\r
+ <attribute name="localLogout" type="anyURI"/>\r
+ <attribute name="globalLogout" type="anyURI"/>\r
+ </attributeGroup>\r
+ \r
<element name="Sessions">\r
<annotation>\r
<documentation>Container for specifying protocol handlers and session policy</documentation>\r
<complexType>\r
<choice minOccurs="0" maxOccurs="unbounded">\r
<element ref="conf:SessionInitiator"/>\r
+ <element ref="conf:LogoutInitiator"/>\r
<element ref="md:AssertionConsumerService"/>\r
<element ref="md:ArtifactResolutionService"/>\r
<element ref="md:SingleLogoutService"/>\r
<attribute name="handlerSSL" type="boolean" default="true"/>\r
<attribute name="exportLocation" type="conf:string"/>\r
<attribute name="exportACL" type="conf:listOfStrings" default="127.0.0.1"/>\r
- <attribute name="redirectErrors" type="anyURI"/>\r
<attribute name="cookieName" type="conf:string"/>\r
<attribute name="cookieProps" type="conf:string"/>\r
<attribute name="idpHistory" type="boolean" default="true"/>\r
<anyAttribute namespace="##other" processContents="lax"/>\r
</complexType>\r
</element>\r
- \r
+\r
<attribute name="policyId" type="conf:string">\r
<annotation>\r
<documentation>Used to reference Policy elements from profile endpoints.</documentation>\r
</complexContent>\r
</complexType>\r
</element>\r
+\r
+ <element name="LogoutInitiator">\r
+ <annotation>\r
+ <documentation>Used to specify handlers that can issue LogoutRequests</documentation>\r
+ </annotation>\r
+ <complexType>\r
+ <complexContent>\r
+ <restriction base="conf:PluggableType">\r
+ <sequence>\r
+ <any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>\r
+ </sequence>\r
+ <attribute name="Location" type="anyURI"/>\r
+ <attribute name="outgoingBindings" type="conf:listOfURIs"/>\r
+ <attribute name="template" type="anyURI"/>\r
+ <attribute name="postArtifact" type="boolean"/>\r
+ <anyAttribute namespace="##any" processContents="lax"/>\r
+ </restriction>\r
+ </complexContent>\r
+ </complexType>\r
+ </element>\r
\r
<element name="Errors">\r
<annotation>\r
</complexType>\r
</element>\r
\r
+ <element name="Notify">\r
+ <annotation>\r
+ <documentation>Used to specify locations to receive application notifications</documentation>\r
+ </annotation>\r
+ <complexType>\r
+ <sequence/>\r
+ <attribute name="Channel" use="required">\r
+ <simpleType>\r
+ <restriction base="string">\r
+ <enumeration value="front"/>\r
+ <enumeration value="back"/>\r
+ </restriction>\r
+ </simpleType>\r
+ </attribute>\r
+ <attribute name="Location" type="anyURI" use="required"/>\r
+ <anyAttribute namespace="##any" processContents="lax"/>\r
+ </complexType>\r
+ </element>\r
+ \r
<element name="DefaultRelyingParty">\r
<annotation>\r
<documentation>Container for specifying security methods to use with particular peers</documentation>\r
<attribute name="authType" type="conf:string"/>\r
<attribute name="authUsername" type="conf:string"/>\r
<attribute name="authPassword" type="conf:string"/>\r
- <attribute name="signRequests" type="boolean"/>\r
- <attribute name="signResponses" type="boolean"/>\r
+ <attribute name="signRequests" type="conf:bindingBoolean"/>\r
+ <attribute name="signResponses" type="conf:bindingBoolean"/>\r
<attribute name="signatureAlg" type="anyURI"/>\r
<attribute name="digestAlg" type="anyURI"/>\r
- <attribute name="encryptRequests" type="boolean"/>\r
- <attribute name="encryptResponses" type="boolean"/>\r
+ <attribute name="encryptRequests" type="conf:bindingBoolean"/>\r
+ <attribute name="encryptResponses" type="conf:bindingBoolean"/>\r
<attribute name="encryptionAlg" type="anyURI"/>\r
<attribute name="keyName" type="conf:string"/>\r
<attribute name="artifactEndpointIndex" type="unsignedShort"/>\r