<div dir="ltr"><div>This is not a specific shibboleth question but I didn't know where to ask it.</div><div><br></div><div><br></div><div><div style="font-size:12.8px"><div>At the XML Signature Syntax and Processing spec [1]  it seems that empty Reference URIs are allowed.</div><div><br></div><div>The following examples demonstrate what the URI attribute identifies and how it is dereferenced:</div><div>....</div><div>URI=""</div><div>Identifies the node-set (minus any comment nodes) of the XML resource containing the signature</div><div><br></div><div><br></div><div>From SAML Core spec [2] I read:</div><div><br></div><div>1.3.2 URI Values</div><div>All SAML URI reference values have the type xs:anyURI, which is built in to the W3C XML Schema Datatypes specification [Schema2].</div><div>Unless otherwise indicated in this specification, all URI reference values used within SAML-defined elements or attributes MUST consist of at least one non-whitespace character, and are REQUIRED to be absolute [RFC 2396].</div><div>Note that the SAML specification makes extensive use of URI references as identifiers, such as status codes, format types, attribute and system entity names, etc. In such cases, it is essential that the values be both unique and consistent, such that the same URI is never used at different times to represent different underlying information.</div><div><br></div><div>5.4.2 References</div><div>SAML assertions and protocol messages MUST supply a value for the ID attribute on the root element of the assertion or protocol message being signed. The assertion’s or protocol message's root element may or may not be the root element of the actual XML document containing the signed assertion or protocol message (e.g., it might be contained within a SOAP envelope).</div><div><br>Signatures MUST contain a single <ds:Reference> containing a same-document reference to the ID attribute value of the root element of the assertion or protocol message being signed. For example, if the ID attribute value is "foo", then the URI attribute in the <ds:Reference> element MUST be "#foo".</div></div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px"><br></div><br style="font-size:12.8px"><span style="font-size:12.8px">Are empty reference URI at Signatures element allowed in the SAML standard? </span><br style="font-size:12.8px"><br style="font-size:12.8px"><span style="font-size:12.8px">At this shibboleth issue I read from Ian Young [3] and [4]:</span><br style="font-size:12.8px"><blockquote class="gmail_quote" style="font-size:12.8px;margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">The XMLSignatureValidationStage, because it is usable on any signed XML, does not enforce the SAML requirement that the signature refers to the ID on the document element, and instead allows a signature reference of "".</blockquote><div style="font-size:12.8px"> </div><div style="font-size:12.8px"><br></div>So may be not strictly allowed, but shibboleth at least seems to support it on Signed Metadata.<br style="font-size:12.8px"><br><br style="font-size:12.8px">I want my SAML implementation to be flexible enough, but keep following SAML standard and follow commom SAML implementations.</div><div> <br><span style="font-size:12.8px">May my SAML implementation support empty URIs (not only for metadata but SAMLResponses)?</span><br style="font-size:12.8px"></div><div><br></div><div><br></div><div><br></div><div>Best regards.</div><br clear="all"><div><br style="font-size:12.8px"><span style="font-size:12.8px">[1] </span><a href="https://www.w3.org/TR/xmldsig-core/#sec-ReferenceProcessingModel" target="_blank" style="font-size:12.8px">https://www.w3.org/TR/xmldsig-core/#sec-ReferenceProcessingModel</a><br style="font-size:12.8px"><span style="font-size:12.8px">[2] </span><a href="http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf" target="_blank" style="font-size:12.8px">http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf</a><br style="font-size:12.8px"><span style="font-size:12.8px">[3] </span><a href="https://issues.shibboleth.net/jira/browse/MDA-91" target="_blank" style="font-size:12.8px">https://issues.shibboleth.net/jira/browse/MDA-91</a><br style="font-size:12.8px"><span style="font-size:12.8px">[4] </span><a href="https://issues.shibboleth.net/jira/browse/MDA-119" target="_blank" style="font-size:12.8px">https://issues.shibboleth.net/jira/browse/MDA-119</a><br></div>
</div>