[java-opensaml COMMIT] in /trunk/opensaml-saml-impl/src: main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/...
noreply at shibboleth.net
noreply at shibboleth.net
Wed Jun 24 16:36:54 EDT 2015
Author: putmanb
Date: Wed Jun 24 16:36:54 2015
New Revision: 4312
URL: http://svn.shibboleth.net/view/java-opensaml?rev=4312&view=rev
Log:
Update default Assertion ValidationContext builder to include SAML self entityID in valid recipients.
Unit tests for builder.
Added:
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/wssecurity/
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/wssecurity/messaging/
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/
trunk/opensaml-saml-impl/src/test/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilderTest.java (with props)
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/impl/
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/impl/issuer.crt
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/impl/issuer.key
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/impl/presenter.crt
trunk/opensaml-saml-impl/src/test/resources/data/org/opensaml/saml/saml2/wssecurity/messaging/impl/presenter.key
Modified:
trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java
Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java?rev=4312&r1=4311&r2=4312&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/wssecurity/messaging/impl/DefaultSAML20AssertionValidationContextBuilder.java Wed Jun 24 16:36:54 2015
@@ -267,8 +267,15 @@
* Get the valid recipient endpoints for attestation.
*
* <p>
- * This implementation returns a set containing the single value
- * from {@link javax.servlet.http.HttpServletRequest#getRequestURL()}.
+ * This implementation returns a set containing the 2 values;
+ * <ol>
+ * <li>
+ * {@link javax.servlet.http.HttpServletRequest#getRequestURL()}
+ * </li>
+ * <li>
+ * if present, {@link SAMLSelfEntityContext#getEntityId()}
+ * </li>
+ * </ol>
* </p>
*
* @param input the assertion validation input
@@ -277,8 +284,15 @@
*/
@Nonnull protected Set<String> getValidRecipients(@Nonnull final SAML20AssertionTokenValidationInput input) {
LazySet<String> validRecipients = new LazySet<>();
+
String endpoint = input.getHttpServletRequest().getRequestURL().toString();
validRecipients.add(endpoint);
+
+ SAMLSelfEntityContext selfContext = input.getMessageContext().getSubcontext(SAMLSelfEntityContext.class);
+ if (selfContext != null && selfContext.getEntityId() != null) {
+ validRecipients.add(selfContext.getEntityId());
+ }
+
log.debug("Resolved valid subject confirmation recipients set: {}", validRecipients);
return validRecipients;
}
More information about the commits
mailing list