我希望运行调用Invoke-Sqlcmd的PowerShell脚本的用户必须提供其Azure Active Directory用户名,密码和MFA响应以对已配置的Azure SQL数据库进行身份验证。我发现关于该主题的信息很少。我尝试省略-Username和-Password,但收到此错误:
Invoke-Sqlcmd : Windows logins are not supported in this version of SQL Server.
答案 0 :(得分:0)
据我所知,SSMS和SqlPackage.exe是当前通过Active Directory通用身份验证为MFA启用的唯一工具。有关更多详细信息,请参阅此document
如果对Azure SQL数据库有任何想法或建议,可以从here提交。
答案 1 :(得分:0)
得到了Azure支持的答复,我在那里问了同样的问题。
当前,只有SQLCMD和BCP实用程序是受支持的实用程序 用于交互式身份验证。 Invoke-SQLCMD不是其中之一 尚受支持的实用程序。
:(
答案 2 :(得分:0)
根据文档,他们现在支持此功能。 “新的BCP支持Azure AD身份验证,包括对SQL数据库和SQL数据仓库的多重身份验证(MFA)支持。”