问题是,如果没有为 Data Lake Store 中的所有用户和组启用读/写/执行访问权限,我无法从另一个订阅中的 Azure 数据工厂写入一个 Azure 订阅中的 Azure Data Lake Store。我知道我也在 ADF 链接服务中为 Data Lake Store 正确设置了授权,所以这不是问题。以下是详细信息:
我有一个由我在公司的主要 Azure 订阅下创建的 Azure Data Lake Store (ADLS)(在此子中,我是一名共同管理员,可以访问除创建/修改其他用户之外的所有内容)。
我在自己的与 MSDN 相关的 Azure 订阅下有一个 Azure 数据工厂 (ADF),我正在尝试将 ADLS 用作复制活动的接收器。
我使用相同的登录名来访问门户中的两个 Azure 订阅,当我运行我的管道时,我收到一个 (403) Forbidden 错误,带有ErrorCode=UserErrorAdlsUnauthorizedAccess
.
到目前为止我所尝试的:
我按照这里的说明https://azure.microsoft.com/en-us/documentation/articles/data-lake-store-secure-data/并将自己添加到 AAD 组。但是,当我将组添加为数据存储的所有者时,Azure 找不到该组,因此我无法添加它。
AAD集团:
找不到 AAD 组:
我还尝试将自己添加为数据存储中 OWNER 角色的用户(通过用户刀片),并且我在数据湖存储的访问刀片中具有读/写/执行访问权限。还添加了另一个开发人员作为所有者,并具有读/写/执行访问权限,但产生了相同的结果。
我被分配为数据湖存储的用户:
我授予对数据湖存储文件系统的访问权限:
当我尝试运行 ADF 管道或重新运行任何失败的切片时,这两种方法都会导致相同的 403 未授权错误。唯一对我有用的是为所有用户和组启用 READ/WRITE/EXECUTE 访问权限:
我尝试了写/执行和只写,但这些组合都不起作用。当我现在启用它并重新运行失败的切片时,一切都会成功完成,并且数据会写入 Data Lake Store。
有没有办法从另一个订阅写入数据湖存储而不像这样打开访问权限?我会这么认为,因为您可以在 Data Lake Store Linked Service 中指定订阅,但到目前为止我还不能这样做......