使用AAD MFA身份验证使用SqlPackage.exeDACPAC发布的命令是什么?

问题描述

使用Azure Active Directory多重身份验证身份验证使用sqlPackage.exe发布的命令是什么?

我尝试过

/ua /tid:<TenantId Guid>

但它不起作用并给出错误消息

Login Failed for user ''.

我不知道如何指定用户名'[email protected]'。 / TargetUser仅用于sql身份验证。

链接到文档https://docs.microsoft.com/en-us/sql/tools/sqlpackage?view=sql-server-ver15

解决方法

我必须从此处下载SQL Package.exe的MSI版本 https://docs.microsoft.com/en-us/sql/tools/sqlpackage-download?view=sql-server-ver15

您将在此处找到sqlpackage.exe

C:\Program Files\Microsoft SQL Server\150\DAC\bin

然后下面的命令行起作用。

sqlpackage.exe /Action:Publish /tsn:"<YourSQL.database.windows.net>" /sf:C:\DB\bin\Debug\YourDB.dacpac /tdn:<YourDatabase> /ua /tid:<Guid>

它应该弹出一个UI以获取凭据。当我使用.net Core版本时,它没有弹出用于凭据的UI。