private static String getRedirectURLWithSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, byte[] signature, String sigAlgo) throws IOException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(sigAlgo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); // Encode the signature value String encodedSig = RedirectBindingUtil.base64URLEncode(signature); addParameter(sb, GeneralConstants.SAML_SIGNATURE_REQUEST_KEY, encodedSig); return sb.toString(); }
private static String getRedirectURLWithSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, byte[] signature, String sigAlgo) throws IOException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(sigAlgo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); // Encode the signature value String encodedSig = RedirectBindingUtil.base64URLEncode(signature); addParameter(sb, GeneralConstants.SAML_SIGNATURE_REQUEST_KEY, encodedSig); return sb.toString(); }
private static String getRedirectURLWithSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, byte[] signature, String sigAlgo) throws IOException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(sigAlgo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); // Encode the signature value String encodedSig = RedirectBindingUtil.base64URLEncode(signature); addParameter(sb, GeneralConstants.SAML_SIGNATURE_REQUEST_KEY, encodedSig); return sb.toString(); }
private static String getRedirectURLWithSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, byte[] signature, String sigAlgo) throws IOException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } //SigAlg String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(sigAlgo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); //Encode the signature value String encodedSig = RedirectBindingUtil.base64URLEncode(signature); addParameter(sb, GeneralConstants.SAML_SIGNATURE_REQUEST_KEY, encodedSig); return sb.toString(); }
private static byte[] computeSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, PrivateKey signingKey) throws IOException, GeneralSecurityException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String algo = signingKey.getAlgorithm(); String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(algo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); byte[] sigValue = SignatureUtil.sign(sb.toString(), signingKey); return sigValue; }
private static byte[] computeSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, PrivateKey signingKey) throws IOException, GeneralSecurityException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String algo = signingKey.getAlgorithm(); String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(algo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); byte[] sigValue = SignatureUtil.sign(sb.toString(), signingKey); return sigValue; }
private static String getRedirectURLWithSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, byte[] signature, String sigAlgo) throws IOException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } //SigAlg String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(sigAlgo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); //Encode the signature value String encodedSig = RedirectBindingUtil.base64URLEncode(signature); addParameter(sb, GeneralConstants.SAML_SIGNATURE_REQUEST_KEY, encodedSig); return sb.toString(); }
private static byte[] computeSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, PrivateKey signingKey) throws IOException, GeneralSecurityException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } //SigAlg String algo = signingKey.getAlgorithm(); String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(algo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); byte[] sigValue = SignatureUtil.sign(sb.toString(), signingKey); return sigValue; }
private static byte[] computeSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, PrivateKey signingKey) throws IOException, GeneralSecurityException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } // SigAlg String algo = signingKey.getAlgorithm(); String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(algo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); byte[] sigValue = SignatureUtil.sign(sb.toString(), signingKey); return sigValue; }
private static byte[] computeSignature(String samlParameter, String urlEncoded, String urlEncodedRelayState, PrivateKey signingKey) throws IOException, GeneralSecurityException { StringBuilder sb = new StringBuilder(); addParameter(sb, samlParameter, urlEncoded); if (isNotNull(urlEncodedRelayState)) { addParameter(sb, GeneralConstants.RELAY_STATE, urlEncodedRelayState); } //SigAlg String algo = signingKey.getAlgorithm(); String sigAlg = SignatureUtil.getXMLSignatureAlgorithmURI(algo); sigAlg = URLEncoder.encode(sigAlg, "UTF-8"); addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, sigAlg); byte[] sigValue = SignatureUtil.sign(sb.toString(), signingKey); return sigValue; }
public static boolean validateSignature(String queryString, PublicKey validatingKey, byte[] sigValue) throws UnsupportedEncodingException, GeneralSecurityException { // Construct the url again StringBuilder sb = new StringBuilder(); if (isRequestQueryString(queryString)) { addParameter(sb, GeneralConstants.SAML_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_REQUEST_KEY)); } else { addParameter(sb, GeneralConstants.SAML_RESPONSE_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_RESPONSE_KEY)); } String relayStateFromURL = RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.RELAY_STATE); if (isNotNull(relayStateFromURL)) { addParameter(sb, GeneralConstants.RELAY_STATE, relayStateFromURL); } addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY)); return SignatureUtil.validate(sb.toString().getBytes("UTF-8"), sigValue, validatingKey); }
public static boolean validateSignature(String queryString, PublicKey validatingKey, byte[] sigValue) throws UnsupportedEncodingException, GeneralSecurityException { // Construct the url again StringBuilder sb = new StringBuilder(); if (isRequestQueryString(queryString)) { addParameter(sb, GeneralConstants.SAML_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_REQUEST_KEY)); } else { addParameter(sb, GeneralConstants.SAML_RESPONSE_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_RESPONSE_KEY)); } String relayStateFromURL = RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.RELAY_STATE); if (isNotNull(relayStateFromURL)) { addParameter(sb, GeneralConstants.RELAY_STATE, relayStateFromURL); } addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY)); return SignatureUtil.validate(sb.toString().getBytes("UTF-8"), sigValue, validatingKey); }
public static boolean validateSignature(String queryString, PublicKey validatingKey, byte[] sigValue) throws UnsupportedEncodingException, GeneralSecurityException { // Construct the url again StringBuilder sb = new StringBuilder(); if (isRequestQueryString(queryString)) { addParameter(sb, GeneralConstants.SAML_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_REQUEST_KEY)); } else { addParameter(sb, GeneralConstants.SAML_RESPONSE_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_RESPONSE_KEY)); } String relayStateFromURL = RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.RELAY_STATE); if (isNotNull(relayStateFromURL)) { addParameter(sb, GeneralConstants.RELAY_STATE, relayStateFromURL); } addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY)); return SignatureUtil.validate(sb.toString().getBytes("UTF-8"), sigValue, validatingKey); }
public static boolean validateSignature(String queryString, PublicKey validatingKey, byte[] sigValue) throws UnsupportedEncodingException, GeneralSecurityException { //Construct the url again StringBuilder sb = new StringBuilder(); if (isRequestQueryString(queryString)) { addParameter(sb, GeneralConstants.SAML_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_REQUEST_KEY)); } else { addParameter(sb, GeneralConstants.SAML_RESPONSE_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_RESPONSE_KEY)); } String relayStateFromURL = RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.RELAY_STATE); if (isNotNull(relayStateFromURL)) { addParameter(sb, GeneralConstants.RELAY_STATE, relayStateFromURL); } addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY)); return SignatureUtil.validate(sb.toString().getBytes("UTF-8"), sigValue, validatingKey); }
public static boolean validateSignature(String queryString, PublicKey validatingKey, byte[] sigValue) throws UnsupportedEncodingException, GeneralSecurityException { //Construct the url again StringBuilder sb = new StringBuilder(); if (isRequestQueryString(queryString)) { addParameter(sb, GeneralConstants.SAML_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_REQUEST_KEY)); } else { addParameter(sb, GeneralConstants.SAML_RESPONSE_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_RESPONSE_KEY)); } String relayStateFromURL = RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.RELAY_STATE); if (isNotNull(relayStateFromURL)) { addParameter(sb, GeneralConstants.RELAY_STATE, relayStateFromURL); } addParameter(sb, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY, RedirectBindingSignatureUtil.getTokenValue(queryString, GeneralConstants.SAML_SIG_ALG_REQUEST_KEY)); return SignatureUtil.validate(sb.toString().getBytes("UTF-8"), sigValue, validatingKey); }