Вызов MSSQL с аутентификацией Windows из AWS Lambda - PullRequest
0 голосов
/ 29 августа 2018

Можно ли вызвать MSSQL из AWS Lambda, когда MSSQL является частью домена Windows и разрешает только проверку подлинности Windows? Например. Есть ли способ запустить функцию Lambda под пользователем AD? или использовать соединитель AD, чтобы связать пользователя AD с учетной записью IAM и запустить Lambda под этой учетной записью?

1 Ответ

0 голосов
/ 29 августа 2018

Да, мы можем использовать pymssql модуль python внутри лямбда-функции для подключения к серверу mssql и выполнения ваших команд. Вам нужно сжать модуль pymssql как лямбда-пакет развертывания. Вот пример команды и соединения:

import boto3
import pymssql
#setup connection
conn = pymssql.connect("serverurl", "username", "password", "dbname")
#setup cursor, so that you can use it to execute your commands
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE persons (
    id INT NOT NULL,
    name VARCHAR(100),
    salesrep VARCHAR(100),
    PRIMARY KEY(id)""")
# you must call commit() to persist your data if you don't set autocommit to True
conn.commit()

Но, для подключения с использованием аутентификации Windows, вот несколько модов: При подключении с использованием проверки подлинности Windows это способ объединения имени хоста базы данных и имени экземпляра, а также имени домена Active Directory / Windows и имени пользователя.

conn = pymssql.connect(
    host=r'dbhostname\myinstance',
    user=r'companydomain\username',
    password=PASSWORD,
    database='DatabaseOfInterest'
)
...