Java для SQL Server с использованием проверки подлинности Windows

Я безуспешно пытаюсь подключиться к удаленной базе данных SQL Server из приложения Java.

Я могу успешно подключиться к этому экземпляру SQL Server из клиента SQL для Mac под названием SQLPro для MSSQL. Java для SQL Server с использованием проверки подлинности Windows

Однако, если я пытаюсь подключиться из приложения Java, используя те же учетные данные, я всегда получаю сообщение об ошибке входа в систему, это фрагмент кода, который я использую:

String connectionUrl =
        "jdbc:sqlserver://some-host:1433;"
                + "database=DBName;"
                + "user=GLOBAL\\user;"
                + "password=somepassword;"
                + "encrypt=true;"
                + "trustServerCertificate=true;"
                + "loginTimeout=30;";

ResultSet resultSet = null;

try (Connection connection = DriverManager.getConnection(connectionUrl);
     Statement statement = connection.createStatement();) {

    // Create and execute a SELECT SQL statement.
    String selectSql = "select * from R2.LABEL_MASTER";
    resultSet = statement.executeQuery(selectSql);

    // Print results from select statement
    while (resultSet.next()) {
        System.out.println(resultSet.getString(2) + " " + resultSet.getString(3));
    }
}
catch (SQLException e) {
    e.printStackTrace();
}

Я использую эту зависимость gradle для драйвера jdbc сервера sql.

группа реализации: «com.microsoft.sqlserver», имя: «mssql-jdbc», версия: «10.2.0.jre11»

Одним из важных моментов является то, что я не на компьютере с Windows, что не должно быть проблемой, как я уже упоминал, я могу подключиться к SQL Server с помощью клиента SQL.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
22
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Чтобы подключиться с использованием аутентификации Windows с учетными данными, предоставленными приложением, необходимо настроить соединение для использования NTLM. Текущая строка подключения предназначена для проверки подлинности SQL.

Другие вопросы по теме