无法在 azure AD 中添加雪花存储帐户的角色分配

问题描述 投票:0回答:2

我已经使用天蓝色云提供商创建了一个雪花,并尝试将数据从数据湖加载到雪花中的外部阶段

为此,我遵循以下步骤:

  1. 在azure中创建存储帐户并在容器(数据湖)中上传文件

  2. 使用 azure_tenant_ID 和 storage_allowed_locations 在雪花中创建存储集成

  3. 根据集成描述,授权 AZURE_CONSENT_URL 从 azure 存储帐户访问该文件

  4. 我还注意到要在azure中的角色分配中添加AZURE_MULTI_TENANT_APP_NAME

但是在角色分配中搜索成员时,我在列表中看不到雪花成员(AZURE_MULTI_TENANT_APP_NAME)?

因此我无法从舞台加载/读取数据

预计

如果角色分配中添加了AZURE_MULTI_TENANT_APP_NAME,那么我相信下面的授权问题将会得到解决

Failure using stage area. Cause: [This request is not authorized to perform this operation using this permission. (Status Code: 403; Error Code: AuthorizationPermissionMismatch)]
azure-active-directory snowflake-cloud-data-platform azure-data-lake azure-authentication snowflake-stage
2个回答
1
投票

听起来您尚未从 Azure 中正确授权 Snowflake。您需要按照以下步骤进行设置的文档页面位于here。听起来您正在遵循“选项 1”中描述的方法。

确保您仔细阅读整页内容。在这些步骤中很容易错过一个小项目,从而导致整个事情无法进行。我认为选项 1、步骤 2 是您最有可能犯错误的地方。

您提到您在 AZURE_MULTI_TENANT_APP_NAME 列表中看不到“SNOWFLAKE”。看来这是通过“步骤 2”下的以下操作来实现的:

  1. 运行 desc 存储集成 ;

  2. 在 Web 浏览器中,导航到 AZURE_CONSENT_URL 列中的 URL。该页面显示 Microsoft 权限请求页面。

  3. 单击“接受”按钮。此操作允许为您的 Snowflake 帐户创建的 Azure 服务主体获取租户内任何资源的访问令牌。仅当您向服务主体授予对容器的适当权限时,才能成功获取访问令牌(请参阅下一步)。

    Microsoft 权限请求页面重定向到 Snowflake 公司网站 (snowflake.com)。


0
投票

通过运行 DESC STORAGE INTEGRATION AZURE_INT 获取 AZURE_MULTI_TENANT_APP_NAME;在 Snowflake 中,如果你得到像这样的值“lckhlcsnowflakepacint_1707582252274”。 删除数字并在 Azure 中选择角色分配的成员中选择“lckhlcsnowflakepacint”。现在你会得到它。

© www.soinside.com 2019 - 2024. All rights reserved.