public static LogoutResponse createLogoutResponse( Issuer issuer, Status status, String inResponseTo, String id) { LogoutResponse logoutResponse = logoutResponseBuilder.buildObject(); logoutResponse.setID(id); logoutResponse.setIssuer(issuer); logoutResponse.setStatus(status); if (StringUtils.isNotBlank(inResponseTo)) { logoutResponse.setInResponseTo(inResponseTo); } logoutResponse.setIssueInstant(DateTime.now()); logoutResponse.setVersion(SAMLVersion.VERSION_20); return logoutResponse; }
public static LogoutResponse createSAMLLogoutResponse( String inResponseTo, String issuer, Status status, String destination ) { if (logoutResponseBuilder == null) { logoutResponseBuilder = (SAMLObjectBuilder<LogoutResponse>) builderFactory.getBuilder(LogoutResponse.DEFAULT_ELEMENT_NAME); } LogoutResponse response = logoutResponseBuilder.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); response.setDestination(destination); return response; }
@SuppressWarnings("unchecked") protected final LogoutResponse buildLogoutResponse(final SAML2MessageContext context, final SingleLogoutService ssoService) { final SAMLObjectBuilder<LogoutResponse> builder = (SAMLObjectBuilder<LogoutResponse>) this.builderFactory .getBuilder(LogoutResponse.DEFAULT_ELEMENT_NAME); final LogoutResponse response = builder.buildObject(); final SAMLSelfEntityContext selfContext = context.getSAMLSelfEntityContext(); response.setID(SAML2Utils.generateID()); response.setIssuer(getIssuer(selfContext.getEntityId())); response.setIssueInstant(DateTime.now(DateTimeZone.UTC).plusSeconds(this.issueInstantSkewSeconds)); response.setVersion(SAMLVersion.VERSION_20); response.setDestination(ssoService.getLocation()); response.setStatus(getSuccess()); final SAMLObject originalMessage = context.getMessage(); if (originalMessage != null && originalMessage instanceof RequestAbstractTypeImpl) { response.setInResponseTo(((RequestAbstractTypeImpl) originalMessage).getID()); } return response; }