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