RequiredValidUntilFilter

Namespace: urn:mace:shibboleth:2.0:metadata
Schema: http://shibboleth.net/schema/idp/shibboleth-metadata.xsd

Overview

The root <md:EntitiesDescriptor> element of a remotely obtained metadata file should be decorated with a validUntil XML attribute. Before the metadata is loaded, the expiration date is checked. If the validUntil attribute indicates the metadata is expired, the metadata is discarded.

The validity check described in the previous paragraph is always performed, regardless of the filters applied to the metadata. In addition to this basic validity check, the RequiredValidUntil filter is used to detect metadata that never expires or has too long a validity period, both of which undermine the usual trust model supported by Shibboleth, and the only one actually standardized in SAML.

In particular, the RequiredValidUntil filter refuses to load the metadata if either of the following conditions is true:

  1. The root XML element does not contain a validUntil attribute.

  2. The value of the validUntil attribute is too far into the future as specified by the maxValidityInterval attribute.

Metadata expiry is important!

In practice, a https://shibboleth.atlassian.net/wiki/spaces/IDP4/pages/1265631654 filter and a RequiredValidUntil filter are often used together to securely obtain remote metadata via HTTP. See the https://shibboleth.atlassian.net/wiki/spaces/IDP4/pages/1265631639 and https://shibboleth.atlassian.net/wiki/spaces/IDP4/pages/1265631638 topics for explicit configuration examples. Other distribution models are discussed in the https://shibboleth.atlassian.net/wiki/spaces/CONCEPT/pages/928645130 topic.

Reference

XML Attributes

Name

Type

Default

Description

Name

Type

Default

Description

maxValidityInterval

Duration

PT14D

The default value has changed in V4.

Defines the window within which the metadata is valid.

A value of zero is a no-op and should be avoided.

Example

RequiredValidUntil filter with maximum validity of 14 days
1 2 3 4 5 <!-- Require a validUntil XML attribute on the EntitiesDescriptor element and make sure its value is no more than 14 days into the future. --> <MetadataFilter xsi:type="RequiredValidUntil" maxValidityInterval="P14D"/>