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

问题描述

这是关于我在从 Synapse Analytics 无服务器池读取 ADLS Gen-2 中的数据时面临的访问问题。

  1. 我拥有 Synapse Studio 的完全访问权限
  2. 我的镶木地板文件所在的容器/文件夹上有“Storage Blob Data Contributor”

虽然我尝试低于 sql(使用正确的 ADLS 名称以及文件夹/容器详细信息)

选择 前 100 名 * 从 开路集( BULK 'https://.dfs.core.windows.net/////2009/DIM_INFO_2009.parquet',格式='镶木地板' ) AS [结果]

我收到以下消息 -

文件“https://.dfs.core.windows.net/////2009/DIM_INFO_2009.parquet”无法打开,因为它不存在或被其他进程使用。

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

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

有关可能导致此问题的任何提示

enter image description here

解决方法

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

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