我目前正在处理一个正在从本地迁移到 Azure 的应用程序 - 这是一个 .Net Web 应用程序,计划托管在 Azure Web 应用程序资源上。此外,该应用程序依赖于 SQL Server 数据库,该数据库在云中将托管在 Azure 虚拟机上。
目前,该应用程序在 AD 服务帐户下运行,并使用 Windows 集成安全性通过 SQL Server 进行身份验证。我试图找到以下问题的明确答案:
从 Azure 应用服务运行的应用程序是否可以对 SQL Server 实例使用 Windows 身份验证?或者是使用 SQL 身份验证的唯一选项,或者 如果服务器升级到 SQL Server 2022,Microsoft Entra ID?
此数据库使用 FILESTREAM 功能,据我了解,不适用于 SQL 身份验证。如果要使用 MS Entra ID 身份验证实施解决方案,是否可以继续使用 FILESTREAM,或者根本无法从应用服务托管的应用程序使用此功能?
对于第一点,我怀疑基于之前的答案是否可以进行 Windows 身份验证,但我还没有找到太多关于 FILESTREAM 是否可以与应用程序服务中的 Entra ID 身份验证一起使用的讨论。
关于您的第一个问题,请考虑使用“托管身份”从应用服务连接到 SQL Server VM。如果您安装了 SQL Server 2022,您当然可以为 SQL Server 设置 Microsoft Entra 身份验证(教程),我去年自己对此进行了测试。 关于第二个问题,您可以使用本地 Windows 帐户连接访问,并且您可以使用上一段提到的 Microsoft Entra 身份验证进行相同的操作。