Доступ к SQL Server с учетными данными домена\имя пользователя Active Directory из Linux с помощью PythonLinux

Ответить Пред. темаСлед. тема
Anonymous
 Доступ к SQL Server с учетными данными домена\имя пользователя Active Directory из Linux с помощью Python

Сообщение Anonymous »

У меня следующий сценарий.
Я получил доступ к серверу Windows SQL с аутентификацией по домену/имени пользователя, прикрепленному к моему личному Active Directory Windows. > а также Active Directory служебной учетной записи нашей команды. Когда я тестирую свою рабочую станцию ​​Windows, я могу подтвердить, что могу программно получать данные с сервера SQL. Я протестировал это на своем компьютере под управлением Windows с помощью двух сценариев Python. Один использовал pyodbc, а другой — pymssql.
пример pyodbc (локальный)

Код: Выделить всё

import pyodbc
conn = pyodbc.connect("DRIVER={ODBC Driver 17 for SQL Server};"
"SERVER=\,
;"
"DATABASE=;"
"Trusted_Connection=yes;"
)

cursor = conn.cursor()
cursor.execute("SELECT * FROM database.table")

for row in cursor.fetchall():
print (row)
cursor.close()

print("Completed!")
Пример pymssql (локальный)

Код: Выделить всё

import pymssql
conn = pymssql.connect(host='', server='', port='
', database='')
cursor = conn.cursor()
cursor.execute("SELECT * FROM database.table")

for row in cursor.fetchall():
print (row)
cursor.close()
Эти два сценария хорошо работали на моем личном ноутбуке с Windows. Как видите, в обоих сценариях мне не пришлось указывать свое имя пользователя или пароль. Например, при использовании pyodbc я использовал '

Код: Выделить всё

Trusted_Connection=yes'. Поскольку я выполнял этот сценарий на своем личном ноутбуке, который получил разрешение на внешний SQL-сервер Windows, этот сценарий автоматически аутентифицирует мой запрос на целевой SQL-сервер и позволяет мне запрашивать данные с него. Аналогичным образом, при использовании pymssql
я смог получить данные непосредственно со своего локального ноутбука.
Однако моя конечная цель – получить данные при выполнении сценария в Linux. Среда Кубернетс. Поэтому я расширяю два приведенных выше сценария, включая свои Active Directory \ и
. Однако в обоих сценариях код не выполняется в соответствии с моими ожиданиями.т.е. использование комбинации Active Directory \ и в среде Linux вызывает у меня ошибки. Расширенные сценарии pyodbc и pymssql представлены ниже. Также указываются полученные сообщения об ошибках.
Пример pyodbc

Код: Выделить всё

import pyodbc
conn = pyodbc.connect("DRIVER={ODBC Driver 17 for SQL Server};"
"SERVER=\,
;"
"DATABASE=;"
"Trusted_Connection=yes;"
"UID=\;"
"PWD=;"
"Integrated_Security=SSPI"
)

cursor = conn.cursor()
cursor.execute("SELECT * FROM database.table")

for row in cursor.fetchall():
print (row)
cursor.close()

print("Completed!")
Обнаружена ошибка pyodbc

Код: Выделить всё

    conn = pyodbc.connect("DRIVER={ODBC Driver 17 for SQL Server};"
pyodbc.OperationalError: ('HYT00', '[HYT00] [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')
Пример pymssql

Код: Выделить всё

import pymssql
conn = pymssql.connect(host='', server='', port='
', database='', user='', password='', tds_version='7.0')
cursor = conn.cursor()
cursor.execute("SELECT * FROM database.table")

for row in cursor.fetchall():
print (row)
cursor.close()
Обнаружена ошибка pymssql:

Код: Выделить всё

    conn = pymssql.connect(host='', server='', port='
', database='', user='\\', password='', tds_version='7.0')
File "src/pymssql/_pymssql.pyx", line 659, in pymssql._pymssql.connect
pymssql.exceptions.OperationalError: (20009, b'DB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist ()\nNet-Lib error during Connection timed out (110)\n')
Я в первую очередь следовал статье «Переполнение стека» под названием «Аутентификация из Linux в Windows SQL Server с помощью pyodbc» и «Аутентификация Windows SQL Server в Linux Python», чтобы выполнить свою задачу. Но шаги, которые я выполнил, мне пока не помогли.
Какие шаги я пропустил? Вы видите проблему в моем коде или у вас есть альтернативные предложения?

Подробнее здесь: https://stackoverflow.com/questions/786 ... om-linux-u
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Linux»