Каков исходный код для подключения SQL-сервера с использованием аутентификации kerberos через JDBC? - PullRequest
0 голосов
/ 19 марта 2019

Может ли кто-нибудь помочь мне в коде соединения jdbc для аутентификации kerberos?Я написал код ниже, и я не уверен, что пропустил что-то важное.

String filePath = System.getProperty("user.dir")+File.separator+"KerberosConfDir";
System.out.println(filePath);
String connectionUrl = "jdbc:sqlserver://mymachine;databaseName=master;integratedSecurity=true;authenticationScheme=JavaKerberos";
Properties connProperties = new Properties();
        //connProperties.put("serverSpn","MSSQLSvc/mymachine.mydomain.com:1433");
        System.out.println("connectionUrl : "+connectionUrl);

        Connection con = null;
        System.setProperty("sun.security.krb5.debug", "true");
        System.setProperty("java.security.auth.login.config", filePath+File.separator+"SQLJDBCDriver.config");
        System.setProperty("java.security.krb5.conf", filePath+File.separator+"krb5.ini");

        try {
          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
          System.out.println("Loading the Driver....");
          con = DriverManager.getConnection(connectionUrl);
          System.out.println("Establishing the connection....");
          DatabaseMetaData dbmd = con.getMetaData();

          System.out.println("dbmd:driver version = " + dbmd.getDriverVersion());
          System.out.println("dbmd:driver name = " + dbmd.getDriverName());
          System.out.println("db name = " + dbmd.getDatabaseProductName());
          System.out.println("db ver = " + dbmd.getDatabaseProductVersion());
        }
        catch (Exception e) {
          e.printStackTrace();
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...