Recarregar a configuração do Kerberos no JAVA sem reiniciar o JVM
O código a seguir é para autenticação em um servidor AD Windows usando Java + Kerberos e funciona bem
public class KerberosAuthenticator {
public static void main(String[] args) {
String jaasConfigFilePath = "/myDir/jaas.conf";
System.setProperty("java.security.auth.login.config", jaasConfigFilePath);
String krb5ConfigFilePath = "/etc/krb5/krb5.conf";
System.setProperty("java.security.krb5.conf", krb5ConfigFilePath);
boolean success = auth.KerberosAuthenticator.authenticate("testprincipal", "testpass");
System.out.println(success);
}
}
O acima é apenas um programa de teste. O código atual será executado em uma aplicação web do tomcat. O problema que estou enfrentando é que, se o arquivo krb5.conf for alterado, o mesmo não será refletido no tomcat, se uma autenticação bem-sucedida já tiver ocorrido uma vez com a versão anterior do krb5.conf. As novas alterações refletem apenas no reinício do tomcat.
Eu quero saber se existe uma maneira de especificar a JVM para recarregar o krb5.conf para que ele obtenha as alterações mais recentes sem reiniciar a JVM.