你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure Active Directory 进行 Azure Data Lake Storage Gen1 最终身份验证

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

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

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

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

必备条件

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

  • 订阅 ID。 可从 Azure 门户进行检索。 例如,Data Lake Storage Gen1 帐户边栏选项卡中提供有此 ID。

    Get subscription ID

  • Azure AD 域名。 可将鼠标悬停在 Azure 门户右上角进行检索。 在以下屏幕截图中,域名为 contoso.onmicrosoft.com,括号中的 GUID 是租户 ID

    Get AAD domain

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

最终用户身份验证

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

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

使用 OAuth 2.0 弹出窗口

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

注意

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

直接传递用户凭据

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

此方法需要什么?

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

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

创建并配置 Azure AD 本机应用程序,用于使用 Azure Active Directory 进行 Data Lake Storage Gen1 最终用户身份验证。 有关说明,请参阅创建 Azure AD 应用程序

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

Create web app

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

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

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

  1. 从 Azure 门户中选择“Azure Active Directory”,单击“应用注册”,找到并单击已创建的 Azure AD 本机应用程序

  2. 在应用程序的“设置”边栏选项卡上,单击“重定向 URI”

    Get Redirect URI

  3. 复制显示的值。

步骤 3:设置权限

  1. 从 Azure 门户中选择“Azure Active Directory”,单击“应用注册”,找到并单击已创建的 Azure AD 本机应用程序

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

    Screenshot of the Settings blade with the Redirect U R I option called out and the Redirect U R I blade with the actual U R I called out.

  3. 在“添加 API 访问”边栏选项卡上,依次单击“选择 API”、“Azure Data Lake”和“选择”

    Screenshot of the Add API access blade with the Select an API option called out and the Select an API blade with the Azure Data Lake option and the Select option called out.

  4. 在“添加 API 访问”边栏选项卡上,单击“选择权限”,选中复选框以给予“Data Lake Store 的完全访问权限”,并单击“选择”

    Screenshot of the Add API access blade with the Select permissions option called out and the Enable Access blade with the Have full access to the Azure Data Lake service option and the Select option called out.

    单击“完成” 。

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

后续步骤

在本文中,你使用 .NET SDK、Java SDK、REST API 等在你创作的客户端应用程序中创建了一个 Azure AD 本机应用程序并收集了所需的信息。你现在可以继续阅读以下文章,这些文章讨论了如何使用 Azure AD Web 应用程序先向 Data Lake Storage Gen1 进行身份验证,然后在存储中执行其他操作。