繁体   English   中英

Azure Data Lake:向Azure Data Lake Store的请求未经授权

[英]Azure Data Lake : The request to Azure Data Lake Store was unauthorized

我们正在尝试将数据从Azure表存储移动到Azure Data Lake。 因此,我们创建了一个数据工厂(具有链接的服务,数据集和管道)。 使用复制动作创建管线。

链接服务之一,我们选择“ Azure Data Lake Store”,我们授权配置,最终配置如下所示

{
    "name": "XXXXXStoreLinkedService",
    "properties": {
        "description": "",
        "hubName": "XXXXXXdatafactory_hub",
        "type": "AzureDataLakeStore",
        "typeProperties": {
            "dataLakeStoreUri": "https://XXXXXX.azuredatalakestore.net/webhdfs/v1",
            "authorization": "**********",
            "sessionId": "**********",
            "subscriptionId": "XXXXXXXXXXXXXXXXXXX",
            "resourceGroupName": "XXXXXXXXXXXXXXX"
        }
    }
}

创建管道之后,似乎正在发生数据移动。 但是我们得到这个错误

复制活动遇到用户错误:ErrorCode = UserErrorAdlsUnauthorizedAccess,'Type = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message =对“ Azure Data Lake Store”的请求未经授权,Source = Microsoft.DataTransfer.ClientLibrary,“ Type = System.Net.WebException,Message =远程服务器返回错误:(403)Forbidden。,Source = System,'

从这个错误看来,我们有未经授权的要求。 但是如上所述,我们已正确授权了Azure Data Lake存储链接服务。

有人可以让我们知道此错误的可能情况是什么,以及我们在此需要做什么。

您能否确认您正在获得其授权信息的用户是否已被允许访问适当的Data Lake Store帐户?

https://azure.microsoft.com/zh-CN/documentation/articles/data-lake-store-secure-data/

有关详细信息,请参见上面的链接。 这是三步过程。 因此,请确保已完成所有步骤。

谢谢,Sachin

Azure数据湖项目经理

解决此问题的方法是通过选中“所有用户和组”旁边的三个框来打开访问权限:

在此处输入图片说明

我创建了所有数据工厂和数据湖存储资产作为所有者,但仍然收到您执行的授权错误。 唯一的区别是我的数据工厂与数据湖商店的订阅不同。 我认为这并不重要,因为我是两个具有相同Microsoft登录名的订阅管理员,并且是Data Lake Store的所有者...可能有一种更集中的方式来执行此操作,但在AAD中引用了接受的答案对我不起作用...直到这将起作用。

您需要在根级别设置递归执行权限,以便对目录结构下的文件执行操作。 在图像中更容易解释。 请参见 -

https://azure.microsoft.com/zh-CN/documentation/articles/data-lake-store-access-control/#common-scenarios-related-to-permissions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM