[java-identity-provider COMMIT] /trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
noreply at shibboleth.net
noreply at shibboleth.net
Fri Nov 14 20:28:43 EST 2014
Author: putmanb
Date: Fri Nov 14 20:28:43 2014
New Revision: 6904
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6904&view=rev
Log:
Initial work on schema for dynamic metadata provider.
Modified:
trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
Modified: trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd?rev=6904&r1=6903&r2=6904&view=diff
==============================================================================
--- trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd (original)
+++ trunk/idp-schema/src/main/resources/schema/shibboleth-metadata.xsd Fri Nov 14 20:28:43 2014
@@ -211,7 +211,230 @@
</extension>
</complexContent>
</complexType>
-
+
+ <complexType name="DynamicHTTPMetadataProvider">
+ <annotation>
+ <documentation>
+ A metadata provider that dynamically fetches metadata from an HTTP server.
+
+ Four strategies are supported for constructing the metadata request URL based on the requested entityID.
+ Only one strategy may be configured for any given instance of a metadata provider.
+
+ Three correspond directly to the 3 child element types of the this type: Template, Regex and MetadataQueryProtocol.
+ See those individual elements for details.
+
+ The fourth, used when none of the above 3 child elements is present, is to treat an HTTP or HTTPS entityID as the
+ metadata request URL. This corresponds to the "well-known location" mechanism, as defined in the SAML 2.0
+ Metadata specification, section 4.1.
+ </documentation>
+ </annotation>
+ <complexContent>
+ <extension base="shibmd:DynamicMetadataProviderType">
+ <choice minOccurs="0" maxOccurs="1">
+ <element name="Template">
+ <annotation>
+ <documentation>
+ Constructs the metadata request URL by means of a simple transform on the template specified by this element.
+ The entityID is substituted into the template parameter "${entityID}".
+ If the element contains an encoded attribute set to "false", the value will be replaced directly,
+ otherwise it will be URL-encoded.
+ </documentation>
+ </annotation>
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="encoded" type="string">
+ <annotation>
+ <documentation>
+ Boolean flag indicating whether the entityID should be encoded before substitution into the template.
+ </documentation>
+ </annotation>
+ </attribute>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ <element name="Regex">
+ <annotation>
+ <documentation>
+ Constructs the metadata request URL by means of a complex transform containing a match attribute containing a
+ regular expression against which the entityID value is applied, and whose element content contains a
+ replacement expression to run based on the results of the match.
+ Only numeric/positional group references (e.g. $1) are supported.
+ </documentation>
+ </annotation>
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="match" type="string">
+ <annotation>
+ <documentation>
+ Regular expression against which the entityID is evaluated.
+ </documentation>
+ </annotation>
+ </attribute>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ <element name="MetadataQueryProtocol" type="string">
+ <annotation>
[... 160 lines stripped ...]
More information about the commits
mailing list