You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TADOConnection能否支持Azure SQL托管实例的Azure AD集成身份验证?

问题结论

这个判断并不完全正确。TADOConnection是Windows平台下对ADO/COM数据访问接口的轻量封装,本身不限制对接的数据库类型和认证方式,能否支持Azure SQL托管实例与Azure AD集成身份验证,核心取决于你使用的SQL Server数据驱动版本,而非TADO组件本身。

可行的配置方案
  • 首先安装最新官方驱动:必须使用微软官方最新的Microsoft OLE DB Driver for SQL Server(推荐19.x及以上版本),不要使用系统自带的老旧SQLOLEDB驱动,后者早已停止维护,不支持Azure AD认证系列参数,也没有对Azure SQL系列服务做兼容优化。
  • 手动配置连接字符串:不要使用TADOConnection可视化配置界面默认勾选的老旧驱动,直接在代码或组件的ConnectionString属性中写入符合规范的连接串,示例如下:
Provider=MSOLEDBSQL19;Server=tcp:<你的实例名称>.public.<所在 Azure 区域>.database.windows.net,3342;Database=<目标数据库名>;Authentication=ActiveDirectoryIntegrated;Encrypt=Yes;TrustServerCertificate=No

注:如果使用私有端点访问Azure SQL托管实例,删除地址中的public段,端口改为默认1433即可。

  • TADOConnection适配注意:只要目标机器上已经正确注册了新的OLE DB驱动,所有Delphi版本的TADOConnection都可以正常调用该驱动完成连接,无需Delphi本身做额外适配。
常见排查点

如果配置后仍连接失败,优先检查以下项:

  • 客户端网络已允许访问Azure SQL托管实例的对应端口,Azure侧防火墙规则已放通客户端IP
  • 当前登录Windows的账号已加入对应Azure AD租户,或已配置本地AD与Azure AD的联邦同步,满足Azure AD集成身份验证的账号要求
  • 不要混用ODBC驱动与OLE DB驱动的连接串参数,两种驱动的参数格式存在差异

内容的提问来源于stack exchange,提问作者George Wynne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 20:15:03