public static Response createResponse( Issuer issuer, Status status, String requestId, Element samlAssertion) throws WSSecurityException { Response response = responseSAMLObjectBuilder.buildObject(); response.setIssuer(issuer); response.setStatus(status); response.setID("_" + UUID.randomUUID().toString()); response.setIssueInstant(new DateTime()); response.setInResponseTo(requestId); response.setVersion(SAMLVersion.VERSION_20); if (samlAssertion != null) { SamlAssertionWrapper samlAssertionWrapper = new SamlAssertionWrapper(samlAssertion); response.getAssertions().add(samlAssertionWrapper.getSaml2()); } return response; }
@SuppressWarnings("unchecked") public static Response createSAMLResponse( String inResponseTo, String issuer, Status status ) { if (responseBuilder == null) { responseBuilder = (SAMLObjectBuilder<Response>) builderFactory.getBuilder(Response.DEFAULT_ELEMENT_NAME); } Response response = responseBuilder.buildObject(); response.setID(UUID.randomUUID().toString()); response.setIssueInstant(new DateTime()); response.setInResponseTo(inResponseTo); response.setIssuer(createIssuer(issuer)); response.setStatus(status); response.setVersion(SAMLVersion.VERSION_20); return response; }
/** * Create a new SAML response object. * @param id the id * @param issueInstant the issue instant * @param recipient the recipient * @param service the service * @return the response */ public Response newResponse(final String id, final DateTime issueInstant, final String recipient, final WebApplicationService service) { final Response samlResponse = newSamlObject(Response.class); samlResponse.setID(id); samlResponse.setIssueInstant(issueInstant); samlResponse.setVersion(SAMLVersion.VERSION_20); if (service instanceof SamlService) { final SamlService samlService = (SamlService) service; final String requestId = samlService.getRequestID(); if (StringUtils.isNotBlank(requestId)) { samlResponse.setInResponseTo(requestId); } } return samlResponse; }
result.setConsent(response.getConsent()); result.setID(ofNullable(response.getId()).orElse("a" + UUID.randomUUID().toString())); result.setInResponseTo(response.getInResponseTo()); result.setVersion(SAMLVersion.VERSION_20); result.setIssueInstant(response.getIssueInstant());