use of ddf.security.liberty.paos.impl.RequestBuilder in project ddf by codice.
the class IdpEndpoint method init.
public void init() {
try (InputStream indexStream = IdpEndpoint.class.getResourceAsStream("/html/index.html");
InputStream submitFormStream = IdpEndpoint.class.getResourceAsStream("/templates/submitForm.handlebars");
InputStream redirectPageStream = IdpEndpoint.class.getResourceAsStream("/templates/redirect.handlebars");
InputStream soapMessageStream = IdpEndpoint.class.getResourceAsStream("/templates/soap.handlebars")) {
indexHtml = IOUtils.toString(indexStream);
submitForm = IOUtils.toString(submitFormStream);
redirectPage = IOUtils.toString(redirectPageStream);
soapMessage = IOUtils.toString(soapMessageStream);
} catch (Exception e) {
LOGGER.info("Unable to load index page for IDP.", e);
}
OpenSAMLUtil.initSamlEngine();
XMLObjectProviderRegistry xmlObjectProviderRegistry = ConfigurationService.get(XMLObjectProviderRegistry.class);
xmlObjectProviderRegistry.registerObjectProvider(Request.DEFAULT_ELEMENT_NAME, new RequestBuilder(), new RequestMarshaller(), new RequestUnmarshaller());
xmlObjectProviderRegistry.registerObjectProvider(ddf.security.liberty.paos.Response.DEFAULT_ELEMENT_NAME, new ResponseBuilder(), new ResponseMarshaller(), new ResponseUnmarshaller());
}
use of ddf.security.liberty.paos.impl.RequestBuilder in project ddf by codice.
the class IdpHandler method createPaosRequest.
private String createPaosRequest(HttpServletRequest request) throws WSSecurityException {
String spIssuerId = getSpIssuerId();
String spAssertionConsumerServiceUrl = getSpAssertionConsumerServiceUrl(spIssuerId);
RequestBuilder requestBuilder = new RequestBuilder();
Request paosRequest = requestBuilder.buildObject();
paosRequest.setResponseConsumerURL(spAssertionConsumerServiceUrl);
paosRequest.setMessageID(createRelayState(request));
paosRequest.setService(Request.ECP_SERVICE);
paosRequest.setSOAP11MustUnderstand(true);
paosRequest.setSOAP11Actor(HTTP_SCHEMAS_XMLSOAP_ORG_SOAP_ACTOR_NEXT);
return convertXmlObjectToString(paosRequest);
}
use of ddf.security.liberty.paos.impl.RequestBuilder in project ddf by codice.
the class PaosInInterceptorTest method setup.
@Before
public void setup() {
OpenSAMLUtil.initSamlEngine();
XMLObjectProviderRegistry xmlObjectProviderRegistry = ConfigurationService.get(XMLObjectProviderRegistry.class);
xmlObjectProviderRegistry.registerObjectProvider(Request.DEFAULT_ELEMENT_NAME, new RequestBuilder(), new RequestMarshaller(), new RequestUnmarshaller());
xmlObjectProviderRegistry.registerObjectProvider(Response.DEFAULT_ELEMENT_NAME, new ResponseBuilder(), new ResponseMarshaller(), new ResponseUnmarshaller());
}
use of ddf.security.liberty.paos.impl.RequestBuilder in project ddf by codice.
the class IdpHandler method createEcpRequest.
private String createEcpRequest() throws WSSecurityException {
org.opensaml.saml.saml2.ecp.impl.RequestBuilder requestBuilder = new org.opensaml.saml.saml2.ecp.impl.RequestBuilder();
org.opensaml.saml.saml2.ecp.Request ecpRequest = requestBuilder.buildObject();
ecpRequest.setSOAP11MustUnderstand(true);
ecpRequest.setSOAP11Actor(HTTP_SCHEMAS_XMLSOAP_ORG_SOAP_ACTOR_NEXT);
Issuer issuer = issuerBuilder.buildObject();
issuer.setValue(getSpIssuerId());
ecpRequest.setIssuer(issuer);
IDPListBuilder idpListBuilder = new IDPListBuilder();
IDPList idpList = idpListBuilder.buildObject();
IDPEntryBuilder idpEntryBuilder = new IDPEntryBuilder();
IDPEntry idpEntry = idpEntryBuilder.buildObject();
idpEntry.setProviderID(idpMetadata.getEntityId());
idpEntry.setName(idpMetadata.getSingleSignOnLocation());
idpEntry.setLoc(idpMetadata.getSingleSignOnLocation());
idpList.getIDPEntrys().add(idpEntry);
ecpRequest.setIDPList(idpList);
return convertXmlObjectToString(ecpRequest);
}
Aggregations