The Shibboleth IdP V3 software has reached its End of Life and is no longer supported. This documentation is available for historical purposes only. See the IDP4 wiki space for current documentation on the supported version.
LocalDynamicMetadataProvider
The LocalDynamicMetadataProvider fetches metadata from a local source dynamically as needed. The deployer is responsible for populating the local source with data, which may be done while the metadata provider is running. New metadata will be seen automatically the first time it is requested.
Use this provider with local metadata
The LocalDynamicMetadataProvider (added in V3.3.0) is used with local metadata. See the MetadataManagementBestPractices topic for more information.
Contents
A common use case will be to use a filesystem directory as the local source. A convenience attribute sourceDirectory is supplied to facilitate this configuration. In this case, the deployer adds XML files each containing a single <md:EntityDescriptor> element to the sourceDirectory. By default, when using the sourceDirectory the file naming convention will be the lower case hex-encoded SHA-1 digest of the entityID, suffixed with ".xml". For example, the metadata for the entity with entityID "urn:test:foobar" will be resolved from the sourceDirectory with filename "d278c9975472a6b4827b1a8723192b4e99aa969c.xml".
Note that with the default entityID digest mechanism, the digested value should not include any leading or trailing whitespace (in particular, no trailing new line character):
Example generating default source key with OpenSSL
$ echo -n "urn:test:foobar" | openssl sha1
d278c9975472a6b4827b1a8723192b4e99aa969cSchema Names and location
The <MetadataProvider> element and the type LocalDynamicMetadataProvider are defined by the urn:mace:shibboleth:2.0:metadata schema, which can be located at http://shibboleth.net/schema/idp/shibboleth-metadata.xsd.
Attributes
Any of the Common Attributes or the Dynamic Attributes may be configured. In addition, the following attributes are available on a LocalDynamicMetadataProvider:
Attribute | Type | Default | Description |
|---|---|---|---|
| String | Convenience mechanism for wiring a | |
| Bean ID | Identifies the Spring bean for the | |
| Bean ID | internal default instance | Identifies a Spring bean for a |
Common Attributes
Dynamic Attributes
The source directory and the cache directory must be distinct
The sourceDirectory and the persistentCacheManagerDirectory (if any) must be distinct. While it is possible, though probably unusual, to enable persistent caching of local metadata, do NOT rely on the same directory for both the source and the cache. This would cause the removal of cached metadata to actually remove the underlying metadata from your system.
Child Elements
Any of the following child elements may be specified (in order).
Name | Cardinality | Description |
|---|---|---|
0 or more | A metadata filter applied to candidate metadata as it flows through the metadata pipeline |
The <MetadataFilter> child element is common to all metadata providers. The LocalDynamicMetadataProvider type has no child elements of its own.