Установите соединение с базой данных SQL Server, используя python с проверкой подлинности Windows

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

Моя приведенная ниже строка подключения отлично работает с проверкой подлинности SQL Server.

config = configparser.ConfigParser()
config.read("C:/configsql.ini")
_SERVER_NAME = config['SQL']['SERVER_NAME']
_DATABASE = config['SQL']['DATABASE']
_USERNAME = config['SQL']['USERNAME']
_PASSWORD = config['SQL']['PASSWORD']
conn = adodbapi.connect("PROVIDER=MSOLEDBSQL;Data Source={0};Database={1};UID={2};PWD={3};".format(_SERVER_NAME,_DATABASE,_USERNAME,_PASSWORD))
return conn

Когда я пытаюсь выполнить подключение с использованием проверки подлинности Windows, это не работает.

Я изменил строку подключения, как показано ниже:

conn = adodbapi.connect("PROVIDER=MSOLEDBSQL;Data Source={0};Database={1};Integrated Security=SSPI;Persist Security Info=False".format(_SERVER_NAME,_DATABASE))

и я получаю это исключение:

Трассировка (последний последний вызов):
Файл "C:\Program Files (x86)\Python 3.5\lib\site-packages\adodbapi\adodbapi.py", строка 113, при подключении

co.connect(kwargs)

Файл "C:\Program Files (x86)\Python 3.5\lib\site-packages\adodbapi\adodbapi.py", строка 275, при подключении

self.connector.Open() # Открыть соединение ADO

Файл "", строка 3, в Open
Файл "C:\Program Files (x86)\Python 3.5\lib\site-packages\win32com\client\dynamic.py", строка 287, в ApplyTypes< /эм>

результат = self.oleobj.InvokeTypes(*(dispid, LCID, wFlags, retType, argTypes) + args)

pywintypes.com_error: (-2147352567, 'Исключение произошло.', (0, 'Драйвер Microsoft OLE DB для SQL Server', 'Ошибка входа в систему. Вход осуществляется из ненадежного домена и не может использоваться со встроенной проверкой подлинности.', Нет, 0, -2147467259), нет)

Во время обработки вышеупомянутого исключения произошло другое исключение:

Обратная трассировка (последний последний вызов):
Файл "Workflow.py", строка 47, в sql_connection

conn = adodbapi.connect("PROVIDER=MSOLEDBSQL;Источник данных={0};База данных={1};Интегрированная безопасность=SSPI;Постоянная информация о безопасности=False".format(_SERVER_NAME,_DATABASE))

Файл "C:\Program Files (x86)\Python 3.5\lib\site-packages\adodbapi\adodbapi.py", строка 117, при подключении

поднять api.OperationalError(e, сообщение)

adodbapi.apibase.OperationalError: (com_error(-2147352567, 'Исключение произошло.', (0, 'Драйвер Microsoft OLE DB для SQL Server', 'Ошибка входа в систему. Вход осуществляется из ненадежного домена и не может использоваться со встроенной проверкой подлинности. ', None, 0, -2147467259), None), 'Ошибка при открытии соединения с "PROVIDER=MSOLEDBSQL;Источник данных=TESTSERVER;База данных=TEST;Integrated Security=SSPI;Persist Security Info=False"')

Пожалуйста, дайте мне знать, как установить соединение с SQL Server с использованием проверки подлинности Windows?


person user2961127    schedule 24.01.2020    source источник
comment
Не могли бы вы также опубликовать код и строку подключения, которая не работает? А также сообщение об ошибке, которое вы получаете.   -  person David Browne - Microsoft    schedule 24.01.2020
comment
Добавлена ​​измененная строка подключения и исключение.   -  person user2961127    schedule 24.01.2020
comment
Ошибка: Ошибка входа. Логин относится к ненадежному домену и не может использоваться со встроенной проверкой подлинности.   -  person David Browne - Microsoft    schedule 24.01.2020
comment
Здесь есть много потенциальных ответов: stackoverflow.com/questions/18603696/   -  person digital.aaron    schedule 24.01.2020
comment
Но обычно эта ошибка означает именно то, что она говорит. Вы пытаетесь подключиться к серверу с помощью локальной учетной записи на другом компьютере или доменной учетной записи из домена, которому SQL Server не доверяет.   -  person David Browne - Microsoft    schedule 24.01.2020
comment
Ок. Это правильно, как вы упомянули. Как мне это решить?   -  person user2961127    schedule 24.01.2020
comment
Вы должны подключиться из учетной записи Windows, которая является членом или иным образом доверена домену, членом которого является машина SQL Server.   -  person ADyson    schedule 25.01.2020