【发布时间】:2021-12-02 16:31:57
【问题描述】:
我正在尝试使用 Azure Active Directory 凭据连接到我的数据库,但 SqlAlchemy 引发错误。这是我的代码:
import sqlalchemy
connexion_str = sqlalchemy.engine.URL.create(
"mssql+pyodbc",
username="user@our.host.com",
password="password",
host="our-db.database.windows.net:1433",
database="db-name",
query={
"driver": "ODBC DRIVER 17 for SQL Server",
"authentication": "ActiveDirectoryIntegrated",
},
)
engine = sqlalchemy.create_engine(connexion_str)
engine.connect()
我收到以下错误:
sqlalchemy.exc.DBAPIError: (pyodbc.Error) ('FA002', "[FA002] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]不可能 d'utiliser l'option d'authentification 'ActiveDirectoryIntegrated' avec les options Utilisateur ou Mot de passe。 (0) (SQLDriverConnect); [FA002] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Impossible d'utiliser l'option d'authentification 'ActiveDirectoryIntegrated' avec les options Utilisateur ou Mot de 过去。 (0)") (此错误的背景: https://sqlalche.me/e/14/dbapi)
抱歉,这是法语,但这意味着 SqlAlchemy(或 pyodbc?)在与“ActiveDirectoryIntegrated”一起使用时不会使用“用户名”或“密码”设置。
如何使用 Azure AD 凭据连接到我的数据库?
【问题讨论】:
标签: python sqlalchemy azure-active-directory pyodbc