GUACAMOLE-362: Set encoding of ticket validator to UTF-8.

This commit is contained in:
Nick Couchman
2017-10-01 08:17:10 -04:00
committed by Nick Couchman
parent 3d091411f3
commit 17599d9153

View File

@@ -27,6 +27,7 @@ import javax.crypto.BadPaddingException;
import javax.crypto.Cipher; import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException; import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException; import javax.crypto.NoSuchPaddingException;
import java.nio.charset.Charset;
import javax.xml.bind.DatatypeConverter; import javax.xml.bind.DatatypeConverter;
import org.apache.guacamole.GuacamoleException; import org.apache.guacamole.GuacamoleException;
import org.apache.guacamole.GuacamoleServerException; import org.apache.guacamole.GuacamoleServerException;
@@ -83,6 +84,7 @@ public class TicketValidationService {
String casServerUrl = confService.getAuthorizationEndpoint(); String casServerUrl = confService.getAuthorizationEndpoint();
Cas20ProxyTicketValidator validator = new Cas20ProxyTicketValidator(casServerUrl); Cas20ProxyTicketValidator validator = new Cas20ProxyTicketValidator(casServerUrl);
validator.setAcceptAnyProxy(true); validator.setAcceptAnyProxy(true);
validator.setEncoding("UTF-8");
try { try {
String confRedirectURI = confService.getRedirectURI(); String confRedirectURI = confService.getRedirectURI();
Assertion a = validator.validate(ticket, confRedirectURI); Assertion a = validator.validate(ticket, confRedirectURI);
@@ -155,7 +157,7 @@ public class TicketValidationService {
// Decode and decrypt, and return a new string. // Decode and decrypt, and return a new string.
final byte[] pass64 = DatatypeConverter.parseBase64Binary(encryptedPassword); final byte[] pass64 = DatatypeConverter.parseBase64Binary(encryptedPassword);
final byte[] cipherData = cipher.doFinal(pass64); final byte[] cipherData = cipher.doFinal(pass64);
return new String(cipherData); return new String(cipherData, Charset.forName("UTF-8"));
} }
catch (BadPaddingException e) { catch (BadPaddingException e) {