utils: add missing string to the url in generate saml signature method

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
Rohit Yadav 2014-09-12 16:26:13 +02:00
parent 5a0ed8764b
commit 84b0e9e96f

View File

@ -218,14 +218,14 @@ public class SAMLUtils {
public static String generateSAMLRequestSignature(String urlEncodedString, PrivateKey signingKey) public static String generateSAMLRequestSignature(String urlEncodedString, PrivateKey signingKey)
throws NoSuchAlgorithmException, SignatureException, InvalidKeyException, UnsupportedEncodingException { throws NoSuchAlgorithmException, SignatureException, InvalidKeyException, UnsupportedEncodingException {
if (signingKey == null || urlEncodedString == null) { if (signingKey == null) {
return null; return urlEncodedString;
} }
String url = urlEncodedString + "&SigAlg=" + URLEncoder.encode(SignatureConstants.ALGO_ID_SIGNATURE_RSA_SHA1, HttpUtils.UTF_8); String url = urlEncodedString + "&SigAlg=" + URLEncoder.encode(SignatureConstants.ALGO_ID_SIGNATURE_RSA_SHA1, HttpUtils.UTF_8);
Signature signature = Signature.getInstance("SHA1withRSA"); Signature signature = Signature.getInstance("SHA1withRSA");
signature.initSign(signingKey); signature.initSign(signingKey);
signature.update(url.getBytes()); signature.update(url.getBytes());
return URLEncoder.encode(Base64.encodeBytes(signature.sign(), Base64.DONT_BREAK_LINES), HttpUtils.UTF_8); return url + "&Signature=" + URLEncoder.encode(Base64.encodeBytes(signature.sign(), Base64.DONT_BREAK_LINES), HttpUtils.UTF_8);
} }
public static KeyFactory getKeyFactory() { public static KeyFactory getKeyFactory() {