if (StatusCode.SUCCESS.equals(logoutResponse.getStatus().getStatusCode().getValue())) { accessTokenDAO.delete(consumer.getJwtClaims().getTokenId()); } else { SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.Unknown); if (logoutResponse.getStatus().getStatusMessage() == null) { sce.getElements().add(logoutResponse.getStatus().getStatusCode().getValue()); } else { sce.getElements().add(logoutResponse.getStatus().getStatusMessage().getMessage());
/** * Validates the SAML logout response. * * @param logoutResponse the logout response * @param context the context * @param engine the signature engine */ protected void validateLogoutResponse(final LogoutResponse logoutResponse, final SAML2MessageContext context, final SignatureTrustEngine engine) { validateSuccess(logoutResponse.getStatus()); validateSignatureIfItExists(logoutResponse.getSignature(), context, engine); validateIssueInstant(logoutResponse.getIssueInstant()); validateIssuerIfItExists(logoutResponse.getIssuer(), context); verifyEndpoint(context.getSPSSODescriptor().getSingleLogoutServices().get(0), logoutResponse.getDestination()); }
protected LogoutResponse resolveLogoutResponse(org.opensaml.saml.saml2.core.LogoutResponse response, List<SimpleKey> verificationKeys, List<SimpleKey> localKeys) { LogoutResponse result = new LogoutResponse() .setId(response.getID()) .setInResponseTo(response.getInResponseTo()) .setConsent(response.getConsent()) .setVersion(response.getVersion().toString()) .setIssueInstant(response.getIssueInstant()) .setIssuer(getIssuer(response.getIssuer())) .setDestination(response.getDestination()) .setStatus(getStatus(response.getStatus())); return result; }