0

当 MSSQL 是 Windows 域的一部分并且只允许 Windows 身份验证时,是否可以从 AWS Lambda 调用 MSSQL?例如,有什么方法可以在 AD 用户下运行 Lambda 函数?还是使用 AD 连接器将 AD 用户与 IAM 账户关联并在该账户下运行 Lambda?

4

1 回答 1

-1

是的,我们可以pymssql在 lambda 函数中使用 python 模块连接到 mssql 服务器并执行您的命令。您需要将pymssql模块压缩为 lambda 部署包。这是命令和连接的示例:

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 身份验证连接,这里有一些 mod: 当使用 Windows 身份验证连接时,这是如何结合数据库的主机名和实例名称,以及 Active Directory/Windows 域名和用户名。

conn = pymssql.connect(
    host=r'dbhostname\myinstance',
    user=r'companydomain\username',
    password=PASSWORD,
    database='DatabaseOfInterest'
)
于 2018-08-29T15:41:35.650 回答