subjectLocalityBuilder = (SAMLObjectBuilder<SubjectLocality>) getBuilderFactory().getBuilder(
SubjectLocality.DEFAULT_ELEMENT_NAME);
- endpointBuilder = (SAMLObjectBuilder<Endpoint>) getBuilderFactory().getBuilder(Endpoint.DEFAULT_ELEMENT_NAME);
+ endpointBuilder = (SAMLObjectBuilder<Endpoint>) getBuilderFactory().getBuilder(
+ AssertionConsumerService.DEFAULT_ELEMENT_NAME);
}
/** {@inheritDoc} */
HttpServletRequest httpRequest = ((HttpServletRequestAdapter) inTransport).getWrappedRequest();
ShibbolethSSORequestContext requestContext = new ShibbolethSSORequestContext();
+ requestContext.setCommunicationProfileId(getProfileId());
+
requestContext.setMetadataProvider(getMetadataProvider());
requestContext.setSecurityPolicyResolver(getSecurityPolicyResolver());
log.error("Shibboleth SSO request does not meet security requirements", e);
throw new ProfileException("Shibboleth SSO request does not meet security requirements", e);
}
-
+
ShibbolethSSOLoginContext loginContext = new ShibbolethSSOLoginContext();
loginContext.setRelyingParty(requestContext.getInboundMessageIssuer());
loginContext.setSpAssertionConsumerService(requestContext.getSpAssertionConsumerService());
protected ShibbolethSSORequestContext buildRequestContext(ShibbolethSSOLoginContext loginContext,
HTTPInTransport in, HTTPOutTransport out) throws ProfileException {
ShibbolethSSORequestContext requestContext = new ShibbolethSSORequestContext();
+ requestContext.setCommunicationProfileId(getProfileId());
requestContext.setMessageDecoder(getMessageDecoders().get(getInboundBinding()));
if (endpoint == null && loginContext.getSpAssertionConsumerService() != null) {
endpoint = endpointBuilder.buildObject();
endpoint.setLocation(loginContext.getSpAssertionConsumerService());
- endpoint.setBinding(getInboundBinding());
+ endpoint.setBinding(getSupportedOutboundBindings().get(0));
log.warn("No endpoint available for relying party {}. Generating endpoint with ACS url {} and binding {}",
new Object[] { requestContext.getPeerEntityId(), endpoint.getLocation(), endpoint.getBinding() });
}