【问题标题】:data factory loses permissions when copying from data lake (gen1) to blob storage从数据湖 (gen1) 复制到 blob 存储时,数据工厂失去权限
【发布时间】:2019-09-26 16:15:53
【问题描述】:

尝试从数据湖 gen1 复制到 blob 存储时,数据工厂给了我这个错误:

"message": "Failure happened on 'Sink' side. ErrorCode=UserErrorFailedFileOperation,
'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Upload file failed at
 path myblobcontainer\\file_that_im_tryin_to_copy.xml.,Source=Microsoft.DataTransfer.Common,''Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Failed to read a 'AzureDataLakeStore' file. File path: 'SourceFolderInDataLake/2019/09/26/SomeOtherFile.usql'.,Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Net.WebException,Message=The remote server returned an error: (403) Forbidden.

我有一个U-SQL Script 活动将执行1-Patient.usql

下一个活动是copy data 步骤:

来源

下沉

我已经使用this tutorial 配置了角色/权限。

我可以去Data Explorer --> Access解决这个问题:

然后我点击Advanced:

点击Apply to all children后,复制正常!

请注意Copy Data 活动之前,数据工厂正在gen1 内执行usql 脚本。该脚本存储在 gen1 中,它会在数据湖和文件夹中生成文件。 运行此脚本永远不会出现任何权限问题。

我做错了什么?

【问题讨论】:

  • 你能提供更多关于data factory is executing usql script inside of the gen1的细节吗?
  • @JoyWang 我已经更新了解释第一个和第二个活动的问题

标签: azure azure-active-directory azure-data-lake azure-data-factory-2 azure-data-explorer


【解决方案1】:

我可以重现您的问题。实际上 Apply folder permissions to sub-folders 不是必需的。问题应该是data Lake gen1的访问控制导致的,问题的关键是文件上传和权限设置的顺序。

您可以先查看Access control in Azure Data Lake Storage Gen1,然后参考以下基于我的测试的信息。

我想您将下面的权限添加到根/

如果你的文件在设置权限之前已经存在,会受到操作的影响,即设置了对文件的访问权限,你就可以访问文件了。

但是如果你在设置权限后上传文件或新建文件夹,文件夹和文件将没有访问权限,你将无法访问它们。可以选择文件,直接点击Access查看。

设置以上权限后,如果设置A default permission entry,则不会影响现有的文件夹和文件,但如果创建新的文件夹和文件,则会获得所有文件夹和文件的访问权限。即旧文件夹和文件仍然无法访问,新文件夹和文件将可以访问。如果你想获取旧的访问权限,只需再次添加截图的权限即可,Apply folder permissions to sub-folders 是相同的逻辑。

总之,如果您希望您的服务主体/MSI 访问数据湖中的所有文件,您可以添加第三个选项An access permission entry and a default permission entry,然后您将能够访问现有和新的文件夹/文件.

【讨论】:

    猜你喜欢
    • 2020-12-22
    • 2023-03-25
    • 2018-08-01
    • 1970-01-01
    • 2019-04-20
    • 2021-03-26
    • 2021-08-26
    • 1970-01-01
    • 2018-09-20
    相关资源
    最近更新 更多