【发布时间】:2021-06-04 17:19:47
【问题描述】:
我正在尝试将在 Azure 应用服务 Web 应用中运行的 Python Flask 应用连接到 Azure SQL 数据库。 当我使用带有用户名和密码的 SQL 身份验证时,效果很好。
现在我想转而使用 Web Apps 托管标识。 我已经激活了系统分配的托管标识,在 SQL 中为其创建了一个用户并将其添加到 db_datareader 角色中。
我正在使用这样的连接字符串与 SqlAlchemy 连接
params = urllib.parse.quote_plus(os.environ['SQL_CONNECTION_STRING'])
conn_str = 'mssql+pyodbc:///?odbc_connect={}'.format(params)
engine_azure = db.create_engine(conn_str,echo=True)
连接字符串存储为应用程序设置,其值为
"Driver={ODBC Driver 17 for SQL Server};Server=tcp:<server>.database.windows.net,1433;Database=<database>;Authentication=ActiveDirectoryMsi;"
我希望这就是我需要做的所有事情,但现在我的应用程序没有启动。 连接数据库时日志报告超时。
我该如何解决这个问题?
【问题讨论】:
标签: python azure-sql-database azure-web-app-service