Ошибка аутентификации Windows SQL Server при подключении с NodeJS

Я пытаюсь подключиться к базе данных MS SQL Server из моего серверного приложения NodeJS, и хотя он работает без ошибок на моем локальном компьютере с использованием localhost/127.0.0.1, когда я отправляю его на реальный сервер, я получаю ошибку аутентификации.

Я получаю следующую ошибку:

Логин из ненадежного домена и не может использоваться с аутентификацией Windows

Поэтому я думаю, что, возможно, это разные домены, но мои домены следующие:

000001.mysubdomain.mydomain.com

ct000002.mysubdomain.mydomain.com

Так что я не сетевой парень, но я бы предположил, что в этом случае и MS SQL Server, и мой NodeJS Server фактически находятся в одном домене, правильно ли я это предположил или неверно?

Немного больше информации - в обоих случаях IP-адреса имеют один и тот же первый номер, но остальные разные - SS.XX.XX.XX - где SS одинаковые номера, а XX разные - означает ли это, что они на самом деле на разных домены?

В дополнение к этому, если это была проблема домена, то почему это будет работать на моей локальной машине?

Поэтому, если мы сможем устранить, что это не проблема домена, я не уверен, куда идти, вот мой код, я использую модуль Tedious-NTLM NodeJS - https://www.npmjs.com/package/tedious-ntlm

var tds = require("tedious-ntlm"); //Get the tedious model for NTLM connection to the SQL Server

//Set up config for logging into the DB
var config = {
    userName: 'myusername', //Username
    domainName: "mydomain", //Domain
    password: 'mypassword', //Password
    server: '000001.mysubdomain.mydomain.com' //Database address
};

function getDataFromSQLServer(callback){
    var connection = new tds.Connection(config); //Configure a connection

    //When the database is connected to we get this event
    connection.on('connect', function(err) {
            // If no error, then good to go...
            if(err){
                console.log('err = ' + err); //Log the error to the console
            }
            else{
                executeStatement(callback); //Execute the test statement
            }
        }
    );

Как вы можете видеть здесь, когда моя функция вызывается, я регистрирую ошибку, я получаю ошибку здесь, когда пытаюсь запустить код с моего сервера, но у меня нет проблем при запуске его с моей локальной машины.

Чтобы получить больше информации об ошибке, у меня есть следующий код:

connection.on('errorMessage',  function(err){
        console.log('full error = ' + JSON.stringify(err)); //Log the error to the console
});

Что дает мне следующую информацию:

полная ошибка = {"число":18452,"состояние":1,"класс":14,"сообщение":"Ошибка входа в систему. Вход из ненадежного домена и не может использоваться с проверкой подлинности Windows.","имя_сервера":"000001","PROCNAME":"","LineNumber":1,"название":"ERROR","событие":"ErrorMessage"}

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

0 ответов

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