Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

InCommon expects participants to refresh metadata daily to ensure that your SAML endpoints have access to the most up-to-date keys and other registered information. Some software implementations (such as Shibboleth) handle metadata with ease, but regardless of your software, please read this entire page to understand the requirements and pitfalls associated with metadata consumption.

Participants are strongly encouraged to rely on SAML software that properly handles metadata; failure to do so can have profound effects on the successful use of the federationFederation. In addition to maintaining the security of your own deployment, proper metadata use is critical to ensure that other participants can count depend on your system behaving correctly when they make changes.

In addition, if you don't refresh your metadata regularly, it is likely that a correct software implementation will fail at some point since the XML document carries an expiration date (validUntil) that causes the metadata to expire in three weeks. InCommon strongly recommends that you do not rely on the actual length of this validity interval in any way, and in fact, we reserve the right to shorten the validity interval with little or no notice.

...

Federation metadata is signed for integrity and authenticity. Participants are strongly encouraged to verify the XML signature on the metadata file before use; failure to do so will greatly seriously compromise the security of your SAML deployment.

...

$ xmlsectool.sh --verifySignature --certificate incommon.pem --inFile InCommon-metadata.xml

Any of a variety of 3rd party tools could be used for this purpose.

Expiry Verification

Federation metadata has an expiration date, much like an X.509 certificate. It is important that expired metadata not be accepted, otherwise an attacker would be able to substitute expired metadata in conjunction with a metadata refresh. In particular, a metadata file should not be accepted if any either of the following conditions are true:

...

A metadata reload process should check each of the above conditions before accepting the metadata; alternatively if a your SAML implementation is known to ignore/reject expired metadata (a basic correctness requirement), it may be sufficient to ensure that a validUntil attribute exists and is not unexpectedly far into the future.

Warning
titleBeware!

Verifying the signature on a SAML metadata file does not verify the presence or value of an expiration date(s). The only way to do that is to parse the XML.

...

If you plan on using the Shibboleth software for the purposes of federation, you can in fact also use Shibboleth to download and verify the signed metadata without having to rely on any other tools. Regardless of your software implementation, however, you can always set up a cron job to refresh your metadata, but in that case you will need additional tools to verify the XML signature at the time of refresh and check the validUntil attribute as noted above. Participants are encouraged to share such tools and scripts for the benefit of the community.

Apart from this refresh process, your software implementation needs to be configured to consume the InCommon metadata. Exactly how this is done depends on your implementation of course. Instructions how to configure Shibboleth for metadata consumption are provided elsewhere in this wiki. Also, see the resources linked below for related information.

...