无法将文件从 ADLS 移动到 Snowflake

Unable to move file from ADLS to Snowflake

我在 ADLS gen2 中有我的 csv 文件。我需要将此文件上传到 snowflake table.

我关注了snowflake documentation.

我在 ADLS 中的源数据:

生成的 SAS 令牌:

尝试在 Snowflake 环境中加载 SAS 令牌:

copy into FACT.MOVIES
  from 'azure://xxx.blob.core.windows.net/airflow-dif/raw-area/'
  credentials=(azure_sas_token=''sp=r&st=2021-05-31T06:22:26Z&sx42021-05-31T14:22:26Z&spr=https&sv=2020-02-10&sr=c&sig=66z1SB1nxxxxxx2e0QGK4%3D'')
  file_format = (TYPE = CSV);

出现以下错误:

Failure using stage area. Cause: [This request is not authorized to perform this operation using this permission. (Status Code: 403; Error Code: AuthorizationPermissionMismatch)]

不确定我错过了什么。任何帮助表示赞赏。谢谢。

问题应该是您使用的凭证有误。凭据不是 sas 令牌。

考虑到您要从虚拟文件夹 (raw-area) 复制文件,您还需要 SAS 令牌的 List 权限。目前您只能创建一个具有 Read 权限的 SAS 令牌,不允许您列出文件。

您可以尝试创建一个同时具有 ReadList 权限的 SAS 令牌吗?