...
federation metadata feed | A SAML metadata file originating from a participant federation Federation acting as a SAMLMetadataProducer |
federation metadata channel | A location (in the form of http/https URL) pointing to the distribution source of the federation metadata feed |
eduGAIN matadata aggregate | A SAML metadata file |
...
a federation metadata channel;
an RSA/EC public key with which the metadata metadata feed document will be signed; this will normally be made available in the form of an X.509 certificate;
the registrationAuthority attribute value to be associated with the federation metadata feed.
...
As specified by the [eduGAIN-Profile] in order to assure metadata integrity and originality, each federation metadata feed MUST be signed as specified in [SAMLMeta]. This signature made with the key matching the one supplied to the eduGAIN OT is the only element on which trust is based. In particular MDS does not use trust that might be derived from an https endpoint details. (the previous sentence sounds strange)
Metadata signature verification is done against the public key alone. If the public key for the federation metadata feed channel is supplied in the form of an X.509 certificate, other aspects of the certificate such as its expiry date do not form part of signature verification. This approach is borrowed from the SAML metadata interoperability profile (url?). In particular an expired certificate will still be used for the verification purpose. (Some text is missing to introduce next table)
Condition condition evaluated | reasonReason | |
---|---|---|
S1 | The signature exists and is valid | eduGAIN-profile] section 4 |
S2 | The signature can be validated with the public key configured for the federation metadata channel | [eduGAIN-profile] section 4 |
S3 | The signature was made using an explicit ID reference, not an empty reference | [eduGAIN-profile] section 4 |
S4 | The signature reference refers to the document element | [eduGAIN-profile] section 4 |
S5 | The signature's digest algorithm is at least as strong as SHA-256, and does not use MD5 | [eduGAIN-profile] section 4 |
S6 | The signature's signature method is RSA with an associated digest at least as strong as | [eduGAIN-profile] section 4 |
S7 | The signature's transforms contain only these permissible values:
| [eduGAIN-profile] section 4 |
S8 | RSA/EC key used to sign metadata is at least 2048/256 bits in length | [eduGAIN-profile] section 4 |
...
Condition Evaluated | Reason | |
R1 | md:IDPSSODescriptor element must have a signing certificate (ds:KeyDescriptor/ds:KeyInfo/ds:X509Data/ds:X509Certificate) | |
R2 | if md:Extentions element with md:UIInfo exists:
| [MDUI] sec. 2.1, [SAML] sec.1.3.1, [SAML] sec.1.3.2 |
R3 | if md:Extentions element with md:DiscoHints exist:
| [MDUI] sec.2.2, [SAML] sec.1.3.1, [SAML] 1.3.2, RFC5870 (for geo) |
R4 | md:ServiceName element within md:AttributeConsumingService is not empty | SAMLMeta 2.4.4.1, SAML 1.3.1 |
R5 | md:AssertionConsumerService element Binding attribute does not contain urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect | [SAMLProf] sec. 4.1.2 line 424 |
R6 | md:DiscoveryResponse element Binding attributes does not contain | [IdPDisco] sec.2.5 |
R7 | indexes in md:DiscoveryResponse, md:AssertionConsumerService, md:AttributeConsuminService are unique | [SAMLMeta] sec.2.2.3 |
...
[SAMLMeta] https://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf
[SAMLProf] http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf
...