Synapse Analytics 无服务器池上的 AD 直通身份验证失败

AD Passthrough authentication failing on Synapse Analytics Serverless Pool

这是关于我在从 Synapse Analytics Serverless Pool 读取驻留在 ADLS Gen-2 中的数据时遇到的访问问题。

  1. 我拥有 Synapse Studio 的完全访问权限
  2. 我的 parquet 文件所在的 container/folder 上有“Storage Blob Data Contributor”

虽然我尝试低于 SQL(使用正确的 ADLS 名称以及 folder/container 详细信息)

SELECT 前 100 * 从 打开行集( 批量 'https://.dfs.core.windows.net/<container_name>////2009/DIM_INFO_2009.parquet', 格式='PARQUET' ) AS [结果]

我收到以下消息 -

无法打开文件 'https://.dfs.core.windows.net/<container_name>////2009/DIM_INFO_2009.parquet',因为它不存在或被另一个进程使用。

当我通过创建外部 table(指向同一个 parquet 文件)并使用 MANAGED IDENTITY 作为凭据来尝试相同的场景时 - 结果按预期显示。

所以 - 我想知道是什么导致了这个问题 - 当我尝试 运行 SQL 并显示结果时。我希望拥有 Storage Blob Data Contributor - 它应该允许我从 Synapse Studio 无服务器池访问 ADLS 上的数据。

关于可能导致此问题的原因的任何提示?

对于 AAD 直通身份验证,请确保您还遵循 these steps 以允许 Synapse Serverless 使用 MSI 以外的身份通过 ADLS 防火墙。

如果上述 PowerShell 方法对您没有吸引力,那么 Azure 门户 now available 中也有它 UI。