如何仅使用Azure广告用户名和密码连接和访问Azure Datalake Gen1存储-c#

问题描述

我只想使用Azure广告用户名和密码来连接和访问Azure Datalake Gen1存储。

我有一个有权访问Azure Datalake Gen1存储的服务帐户。我可以通过Microsoft Azure存储资源管理器使用凭据连接和下载文件。另外,我能够通过ADLS连接管理器和Azure Data Lake Store文件系统任务在SSIS中进行连接。

现在,我需要创建一个控制台应用程序以连接并执行某些操作(列出文件文件夹以及下载文件

在Google上搜索所有建议使用Azure广告应用程序的结果(clientid,tenantid等)。不幸的是,我没有那个选择。

在SSIS ADLS中,连接管理器似乎使用了某种支持Azure广告用户名和密码的WebHdfs连接。但是,我无法在c#中实现类似的功能

和往常一样,在截止日期前要紧。任何帮助表示赞赏。

解决方法

Azure Data Lake Storage Gen1使用Azure Active Directory进行身份验证。在创作适用于Data Lake Storage Gen1的应用程序之前,必须确定如何使用Azure Active Directory(Azure AD)对应用程序进行身份验证。

下表说明了Data Lake Storage Gen1如何支持最终用户和服务到服务的身份验证机制。

enter image description here

参考: Authentication with Azure Data Lake Storage Gen1 using Azure Active Directory

使用.NET SDK检验此Service-to-service authentication with Azure Data Lake Storage Gen1-了解如何使用.NET SDK通过Azure Data Lake Storage Gen1进行服务到服务的身份验证。

有关使用.NET SDK使用Data Lake Storage Gen1进行最终用户身份验证,请参见End-user authentication with Data Lake Storage Gen1 using .NET SDK