Azure Data Lake Storage Gen1 使用 Microsoft Entra ID 进行身份验证。 在创作使用 Data Lake Storage Gen1 的应用程序之前,必须先确定如何使用 Microsoft Entra ID 对应用程序进行身份验证。 可用的两个主要选项是:
- 最终用户身份验证
- 服务到服务的身份验证(本文讨论的内容)
这两个选项都会将 OAuth 2.0 令牌提供给应用程序,此令牌会附加到对 Data Lake Storage Gen1 作出的每个请求。
本文讨论如何为服务到服务身份验证创建 Microsoft Entra Web 应用程序。 有关最终用户身份验证的 Microsoft Entra 应用程序配置的说明,请参阅使用 Microsoft Entra ID 进行 Data Lake Storage Gen1 最终用户身份验证。
先决条件
- 一份 Azure 订阅。 请参阅获取 Azure 免费试用版。
步骤 1:创建 Active Directory Web 应用程序
使用 Microsoft Entra ID,针对通过 Azure Data Lake Storage Gen1 进行的服务到服务身份验证创建和配置 Microsoft Entra Web 应用程序。 有关说明,请参阅创建 Microsoft Entra 应用程序。
遵循以上链接的说明时,请确保为应用程序类型选择“Web 应用/API”,如以下屏幕截图所示:
步骤 2:获取应用程序 ID、身份验证密钥和租户 ID
以编程方式登录时,需要应用程序的 ID。 如果应用程序在其自己的凭据下运行,则还需要身份验证密钥。
若要了解如何检索应用程序的应用程序 ID 和身份验证密钥(也称为客户端密码),请参阅获取应用程序 ID 和身份验证密钥。
有关如何检索租户 ID 的说明,请参阅获取租户 ID。
步骤 3:将 Microsoft Entra 应用程序分配给 Azure Data Lake Storage Gen1 帐户文件或文件夹
登录到 Azure 门户。 打开要与之前创建的 Microsoft Entra 应用程序关联的 Data Lake Storage Gen1 帐户。
在 Data Lake Storage Gen1 帐户边栏选项卡中,单击“数据资源管理器”。
在“数据资源管理器”边栏选项卡中,单击要为其提供 Microsoft Entra 应用程序访问权限的文件或文件夹,并单击“访问”。 若要配置对文件的访问,必须在“文件预览”面板中单击“访问”。
“访问”面板列出了已分配给根目录的标准访问和自定义访问。 单击“添加”图标添加自定义级别的 ACL。
单击添加图标打开添加自定义访问窗口。 在此边栏选项卡中,单击“选择用户或组”,并在“选择用户或组”边栏选项卡中,查找之前创建的 Microsoft Entra 应用程序。 如果搜索范围中存在大量的组,请使用顶部的文本框筛选组名称。 单击要添加的组,并单击“选择”。
单击“选择权限”,选择权限以及是将这些权限分配为默认 ACL、访问 ACL 还是同时分配为这两类。 单击“确定”。
有关 Data Lake Storage Gen1 中的权限和默认/访问 ACL 的详细信息,请参阅 Data Lake Storage Gen1 中的访问控制。
在“添加自定义访问”边栏选项卡中,单击“确定”。 新添加的组及相关权限列在“访问”面板中。
注释
如果计划将 Microsoft Entra 应用程序限制到特定文件夹,则还需要为该 Microsoft Entra 应用程序赋予根目录 执行 权限,以便通过 .NET SDK 启用文件创建访问权限。
注释
若要使用 SDK 创建 Data Lake Storage Gen1 帐户,必须将 Microsoft Entra Web 应用程序作为角色分配给你在其中创建 Data Lake Storage Gen1 帐户的资源组。
步骤 4:获取 OAuth 2.0 令牌终结点(仅适用于基于 Java 的应用程序)
登录 Azure 门户,在左侧窗格中单击“Active Directory”。
在左侧窗格中,单击“应用注册”。
在“应用注册”边栏选项卡顶部,单击端点。
从终结点列表中,复制 OAuth 2.0 令牌终结点。
后续步骤
本文创建了一个 Microsoft Entra Web 应用程序,并使用 .NET SDK、Java、Python、REST API 等在创作的客户端应用程序中收集了所需的信息。现可转到以下文章,这些文章介绍如何使用 Microsoft Entra 本机应用程序先通过 Data Lake Storage Gen1 进行身份验证,再在存储中执行其他操作。