如何使用AAD + MultiFactorAuth

时间:2017-02-09 23:24:00

标签: powershell azure-active-directory sqlcmd multi-factor invoke-sqlcmd

所有文档和帮助线程我都可以找到带有Authentication = ActiveDirectoryIntegrated的引用连接字符串来使用AAD集成来命中SQL。如果我使用SSMS,我也可以选择" Active Directory Universal"如果需要MultiFactorAuth(MFA),则会提示。

我想使用powershell来调用-sqlcmd,甚至直接调用sqlcmd.exe - 是否支持MFA流?如何针对启用AAD的启用MFA的SQLAzure实例获取命令行查询?

invoke-sqlcmd : Failed to authenticate the user NT Authority\Anonymous Logon in Active Directory
(Authentication=ActiveDirectoryIntegrated).
Error code 0xCAA2000C; state 10
AADSTS50079: The user is required to use multi-factor authentication.
Trace ID: 54f0cb31-2f0f-4137-b142-b312a6cd441b
Correlation ID: 70204904-576c-4db5-9c3b-6ccd7fe6b409
Timestamp: 2017-02-09 22:56:39Z

我已经看过https://docs.microsoft.com/en-us/azure/sql-database/sql-database-aad-authentication,一切正常,直到MFA被应用,或者当它意识到是时候重新验证并提示时。

如果我有办法缓存信用卡,那么ActiveDirectoryIntegrated通常可以正常工作,我只需要重新验证并重新缓存,当它决定是时候强制MFA提示时我也会对此开放

2 个答案:

答案 0 :(得分:2)

  

我想使用powershell来调用-sqlcmd,甚至直接调用sqlcmd.exe - 是否支持MFA流?

没有。据我所知,SSMS是目前通过Active Directory通用身份验证为MFA启用的唯一工具。(请参阅here

如果您对Azure SQL数据库有任何想法或建议,可以从here提交。

答案 1 :(得分:1)