The InlineMetadataProvider allows the static specification of SAML2 Metadata inside the metadata provider.

Schema Names and location

The <MetadataProvider> element and the type InlineMetadataProvider are defined by the urn:mace:shibboleth:2.0:metadata schema, which can be located at http://shibboleth.net/schema/idp/shibboleth-metadata.xsd.

The SAML Metadata is defined by the urn:oasis:names:tc:SAML:2.0:metadata schema which can be located at http://docs.oasis-open.org/security/saml/v2.0/saml-schema-metadata-2.0.xsd.

Attributes

Any of the Common Attributes may be specified.

Common Attributes

Child Elements

Any of the following child elements may be specified (in order).

NameCardinalityDescription
<MetadataFilter>0 or moreA metadata filter applied to candidate metadata as it flows through the metadata pipeline
<md:EntityDescriptor>
0 or 1Specifies the metadata for a single SAML entity
<md:EntitiesDescriptor>
0 or 1Specifies the metadata for two or more SAML entities

The <MetadataFilter> child element is common to all metadata providers. The remaining child elements are exclusive to the InlineMetadataProvider type.

Exactly one of the <md:EntityDescriptor> or <md:EntitiesDescriptor> child elements is required. If neither is configured, an error will occur. See the SAML 2.0 Metadata specification for more information about these elements.

Examples

The following example specifies SAML metadata whose top-level element is an <md:EntityDescriptor> element:

<MetadataProvider xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" id="exampleInLineEntity" xsi:type="InlineMetadataProvider" sortKey="1">
	<!-- Details removed -->
	<md:EntityDescriptor ID="entity" entityID="https://app.example.org/sp">
      	<md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
			<md:AssertionConsumerService
				Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
				Location="https://sp.example.org/Shibboleth.sso/SAML2/POST"
				index="1" />
        </md:SPSSODescriptor>
	</md:EntityDescriptor>
</MetadataProvider>

The following example specifies SAML metadata whose top-level element is an <md:EntitiesDescriptor> element:

<MetadataProvider xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" id="exampleInLineEntities" xsi:type="InlineMetadataProvider">
	<!-- Details removed -->
	<md:EntitiesDescriptor>
		<md:EntityDescriptor ID="uk001502" entityID="https://wiki.example.org/sp">
			<md:SPSSODescriptor
				protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
				<saml:AssertionConsumerService
					Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
					Location="https://sp.example.org/Shibboleth.sso/SAML2/POST"
					index="1" />
			</md:SPSSODescriptor>
		</md:EntityDescriptor>
        <!-- Further EntityDescriptors removed -->
	</md:EntitiesDescriptor>
</MetadataProvider>