try {
if (!this.registry.resourceExists(kerberosPath)) {
return null;
}
KerberosConfigData kerberosConfigData = new KerberosConfigData();
String servicePrincipalResource = kerberosPath + "/" + KerberosConfig.SERVICE_PRINCIPLE_NAME;
kerberosConfigData.setServicePrincipleName(getRegistryProperty(servicePrincipalResource,
KerberosConfig.SERVICE_PRINCIPLE_NAME));
String servicePrincipalPasswordResource = kerberosPath + "/" + KerberosConfig.SERVICE_PRINCIPLE_PASSWORD;
String encryptedString = getRegistryProperty(servicePrincipalPasswordResource,
KerberosConfig.SERVICE_PRINCIPLE_PASSWORD);
CryptoUtil cryptoUtil = CryptoUtil.getDefaultCryptoUtil();
try {
kerberosConfigData.setServicePrinciplePassword
(new String(cryptoUtil.base64DecodeAndDecrypt(encryptedString)));
} catch (CryptoException e) {
String msg = "Unable to decode and decrypt password string.";
log.warn(msg, e);
}