Kerberos를 사용하여 사용자를 인증하는 MS SQL Server RDBMS가 있습니다.JDBC MS SQL Server Kerberos Auth
jdbc : sqlserver : // DB_NAME : DB_PORT; integratedSecurity = true으로 db url을 설정하고 경로에 적절한 sqljdbc_auth.dll을 추가하면 모든 것이 작동합니다.
그러나 Java Kerberos 인증을 사용하고 싶기 때문에 * nix 컴퓨터에서도 동일한 코드를 사용할 수 있습니다. SQLSERVER :
그래서 내 DB URL이 JDBC된다 // DB_NAME : DB_PORT;에서 integratedSecurity = true이고, authenticationScheme = JavaKerberos나는 다음과 같은 예외가 무엇입니까 코드를 실행하고 있습니다 :
Exception in thread "main" javax.security.auth.login.LoginException: Unable to obtain Princpal Name for authentication
at com.sun.security.auth.module.Krb5LoginModule.promptForName(Krb5LoginModule.java:796)
at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:667)
at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:580)
을
왜 이런 일이 일어나는 지 알고 계십니까? 나는 jdbc 드라이버가 제공하는 기본 Krb5LoginModule을 사용하고 있다고 덧붙여 야한다.
미리 감사드립니다. authenticationScheme = JavaKerberos를 사용하는 경우
당신이 MS JDBC 또는 Open JTDS를 사용하고 있습니까?를 참조하십시오 – gbn
@gbn MS JDBC를 사용하고 있습니다. sqljdbc4.jar – nikkatsa
@nikkatsa 해결책을 찾았습니까? –