使用 Microsoft Entra ID 进行 Azure Data Lake Storage Gen1 最终用户身份验证

Azure Data Lake Storage Gen1 使用 Microsoft Entra ID 进行身份验证。 编写使用 Data Lake Storage Gen1 或 Azure Data Lake Analytics 的应用程序之前,必须首先决定使用 Microsoft Entra ID 对应用程序进行身份验证的方式。 可用的两个主要选项是:

  • 最终用户身份验证(本文所述)
  • 服务到服务身份验证(从上面的下拉列表中选择此选项)

这两个选项都会将 OAuth 2.0 令牌提供给应用程序,此令牌会附加到对 Data Lake Storage Gen1 或 Azure Data Lake Analytics 作出的每个请求。

本文讨论如何创建 Microsoft Entra 本机应用程序以进行最终用户身份验。 有关用于服务到服务身份验证的 Microsoft Entra 应用程序配置的说明,请参阅使用 Microsoft Entra ID 进行 Data Lake Storage Gen1 服务到服务身份验证

先决条件

  • Azure 订阅。 请参阅获取 Azure 免费试用版

  • 订阅 ID。 可从 Azure 门户进行检索。 例如,它在 Data Lake Storage Gen1 帐户边栏中可用。

    获取订阅 ID

  • 你的 Microsoft Entra 域名。 将鼠标悬停在 Azure 门户的右上角,可以获取相关信息。 在以下屏幕截图中,域名为 contoso.onmicrosoft.com,括号中的 GUID 是租户 ID

    获取 Microsoft Entra 域

  • 您的 Azure 租户 ID。 有关如何检索租户 ID 的说明,请参阅获取租户 ID

最终用户身份验证

如果希望最终用户通过 Microsoft Entra ID 登录到应用程序,建议使用此身份验证机制。 然后,应用程序可访问 Azure 资源,且访问权限级别与已登录的最终用户相同。 最终用户需要定期提供凭据,以使应用程序可继续访问。

让最终用户登录的结果是会向应用程序授予访问令牌和刷新令牌。 访问令牌会附加到对 Data Lake Storage Gen1 或 Data Lake Analytics 作出的每个请求,默认情况下一小时内有效。 刷新令牌可用于获取新的访问令牌,默认情况下两周内有效。 可使用两种不同的最终用户登录方式。

使用 OAuth 2.0 弹出窗口

应用程序会触发 OAuth 2.0 身份验证弹出窗口,最终用户可在其中输入凭据。 如有必要,此弹出窗口也适用于 Microsoft Entra 双因素身份验证 (2FA) 过程。

注释

此方法在 Azure AD 身份验证库 (ADAL) 中尚不支持 Python 或 Java。

直接传递用户凭据

应用程序可直接向 Microsoft Entra ID 提供用户凭据。 此方法仅适用于组织 ID 用户帐户,不适用于个人/“实时 ID”用户帐户,包括以 @outlook.com 或 @live.com 结尾的帐户。 此外,此方法不适用于需要 Microsoft Entra 双因素身份验证 (2FA) 的用户帐户。

我需要什么来实现这种方法?

  • Microsoft Entra 域名。 此要求已在本文的先决条件中列出。
  • Microsoft Entra 租户 ID。 此要求已在本文的先决条件中列出。
  • Microsoft Entra ID 本地应用程序
  • Microsoft Entra 本地应用的应用程序 ID
  • Microsoft Entra 本机应用程序的重定向 URI
  • 设置委派权限

步骤 1:创建 Active Directory 本机应用程序

创建和配置 Microsoft Entra 本机应用程序,以便使用 Microsoft Entra ID 进行 Data Lake Storage Gen1 最终用户身份验证。 有关说明,请参阅创建 Microsoft Entra 应用程序

在遵循链接中的说明进行操作时,请确保选择应用程序类型为本机,如以下截图所示:

创建 Web 应用

步骤 2:获取应用程序 ID 和重定向 URI

请参阅获取应用程序 ID 来检索应用程序 ID。

若要检索重定向 URI,请执行以下步骤。

  1. 在 Azure 门户中,选择“Microsoft Entra ID”,选择“应用注册”,然后找到并选择创建的 Microsoft Entra 本机应用程序

  2. 在应用程序的设置面板中,选择重定向 URI

    获取重定向 URI

  3. 复制显示的值。

步骤 3:设置权限

  1. 在 Azure 门户中,选择“Microsoft Entra ID”,选择“应用注册”,然后找到并选择创建的 Microsoft Entra 本机应用程序

  2. 在应用程序的“设置”边栏选项卡上,选择“所需权限”,然后选择“添加”

    对“设置”边栏选项卡进行屏幕截图,其中调出“重定向 U R I” 选项,以及对“重定向 U R I”边栏选项卡进行屏幕截图,其中调出实际的 U R I。

  3. 在“添加 API 访问”边栏选项卡中选择“选择 API”,然后选择“Azure Data Lake”,最后选择“选择”

    对“添加 API 访问”面板进行屏幕截图,其中标出“选择 API”选项,以及对“选择 API”面板进行屏幕截图,其中标出“Azure Data Lake”选项和“选择”选项。

  4. 在“添加 API 访问”窗口中,选择“选择权限”,勾选“Data Lake Store 的完全访问权限”的复选框,然后选择“选择”。

    “添加 API 访问”面板的屏幕截图,其中标出了“选择权限”选项;以及“启用访问”面板的屏幕截图,其中标出了“拥有对 Azure Data Lake 服务的完整访问权限”选项和“选择”选项。

    选择“完成” 。

  5. 重复最后两步,同时为 Windows Azure 服务管理 API 授予权限

后续步骤

在本文中,您创建了一个 Microsoft Entra 本机应用程序,并在您编写的客户端应用程序中使用 .NET SDK、Java SDK、REST API 等收集了所需的信息。您现在可以继续阅读下列文章,以了解如何使用 Microsoft Entra 网络应用程序先进行 Data Lake Storage Gen1 的身份验证,然后在存储中执行其他操作。