使用 DataGrip - Active Directory 连接到 Azure 数据库
Posted
技术标签:
【中文标题】使用 DataGrip - Active Directory 连接到 Azure 数据库【英文标题】:Connect to Azure database with DataGrip - Active Directory 【发布时间】:2019-08-07 08:16:05 【问题描述】:我正在尝试使用 Active Directory 连接通过 DataGrip 连接到 Azure 数据库(注意:不是 Active Directory - 密码)
我遵循this 接受的答案
我设置了integratedSecurity=false
和authentication=ActiveDirectoryIntegrated
。
尝试连接到 Test Connection
时收到错误消息
Connection to Azure SQL Database failed. Cannot set "Authetication" with "IntegratedSecurity" set to "true"
。
是否是某种可以修复的错误,如果可以,我该如何解决这个问题?
编辑:
更多信息:
在 Azure 门户上,我可以看到这是 SQL database
。
服务器名称以database.windows.net
结尾。
当我尝试通过 Azure 生成的连接字符串(在 Data Grip Add data from URL
中)进行连接时,我也无法连接。
【问题讨论】:
【参考方案1】:DataGrip 支持我们使用 Azure Active Directory 身份验证。请看:Microsoft Azure。
您可以从 Portal 获取带有 Active Directory 集成身份验证的连接字符串 (URL):
将 URL 替换为连接字符串(Active Directory 集成身份验证):
希望这会有所帮助。
【讨论】:
它没有帮助。还是同样的问题。Cannot set "Authentication" with "IntegratedSecurity" set to "true".
如果不设置“IntegratedSecurity=true”,这样可以吗?
我什至将其设置为 false。错误仍然存在。我猜这是 DataGrip 错误,但不确定。我在代理后面,这也可能是一个问题,但我在代理设置中指定了它。
是的,我们找不到更多关于 Active Directory 集成身份验证的文章。【参考方案2】:
这里的术语有很多混淆。
简而言之,连接字符串属性Integrated Security=true
表示您要使用“Windows 身份验证”。任何 Azure SQL(主机名以 database.windows.net
结尾的任何东西)都可能支持这种类型的身份验证可能。 Azure SQL 仅支持 Azure Active Directory 身份验证,但可能可以在 windows 域帐户和 Azure Active Directory 之间实现单点登录。
【讨论】:
我可以通过 SSMS 中的“Active Directory - 集成”选项进行连接。有什么不同吗?此外,在我链接的线程中,有人已通过 DataGrip 成功连接到 Azure,所以我猜你不能完全正确,它不能用 Active Directory 完成。 术语存在混淆。您绝对不能使用“Windows 身份验证”连接到任何 Azure SQL。在这种情况下,“Active Directory”可以与“Azure Active Directory”互换使用。解释起来很混乱。 我已经大幅改写了我的答案。这不再是一个真正的答案。您能否编辑您的原始问题并澄清您正在连接的 SQL Server 类型。服务器名称是否以database.windows.net
结尾?
我已经了解到,如果您有“联合”设置,是可以从 Windows 帐户登录到 Azure AD,但我不太了解它。我想我会删除这个答案,因为它不正确且具有误导性
我找不到简单的解释。这是要阅读的一件事:docs.microsoft.com/en-us/azure/sql-database/… 这是另一件事 docs.microsoft.com/en-us/azure/active-directory/hybrid/… 两者都不容易理解。如果您希望您的域帐户登录到 Azure AD,您首先需要您的“Windows 管理员”进行设置以上是关于使用 DataGrip - Active Directory 连接到 Azure 数据库的主要内容,如果未能解决你的问题,请参考以下文章