Как пропустить файл вкладки «Принципал» и «Ключ» программно при подключении SQL через Authentication kerberos java javaJAVA

Программисты JAVA общаются здесь
Anonymous
Как пропустить файл вкладки «Принципал» и «Ключ» программно при подключении SQL через Authentication kerberos java java

Сообщение Anonymous »

Я пытаюсь подключить MSSQL через JDBC с аутентификацией Kerberos, и я был успешным, когда настроил его с использованием аргументов JVM. < /p>

Код: Выделить всё

-Djava.security.krb5.conf=$SECURITY_KRB5_CONF -Djava.security.auth.login.config=$SECURITY_JAAS_CONF

Поскольку я получаю файл keytab на лету, я не могу использовать JAAS Congf в качестве параметра JVM и вместо этого передавать параметры следующим образом в месте, где я пытаюсь получить соединение JDBC, но не рассматривает принцип, который прошел; Вместо этого он пытается аутентифицировать с системой, зарегистрированным пользователем@Realm. < /p>

Код: Выделить всё

if (authType.contains(AuthenticationType.KERBEROS.getAuthType())) {

String spn = userNAME
String keytabFile = ***
System.setProperty("java.security.krb5.conf", krb5ConfLocation);
System.setProperty("javax.security.auth.useSubjectCredsOnly", "false");
System.setProperty("java.security.auth.login.module.spi", "com.sun.security.auth.module.Krb5LoginModule");
System.setProperty("principal", spn);
System.setProperty("javax.security.auth.login.config",keytabFile);
//System.setProperty("sun.security.krb5.debug", krb5Debug);

}

return  connection = DriverManager.getConnection(jdbcURL,jdbcProps);
}
Любая помощь будет очень оценена здесь.

Подробнее здесь: https://stackoverflow.com/questions/795 ... g-sql-thro

Вернуться в «JAVA»