Проверка подлинности пользователей в Azure Data Lake Storage 1-го поколения с помощью .NET SDK
В этой статье описывается, как использовать пакет SDK для .NET для проверки подлинности пользователей с помощью Azure Data Lake Storage 1-го поколения. См. дополнительные сведения о проверке подлинности между службами в Data Lake Storage 1-го поколения с помощью .NET SDK.
Предварительные требования
Visual Studio 2013 или более поздней версии. В инструкциях ниже используется Visual Studio 2019.
Подписка Azure. См. страницу бесплатной пробной версии Azure.
Создайте Microsoft Entra ID "собственное" приложение. Необходимо выполнить действия, описанные в разделе Проверка подлинности конечных пользователей с помощью Data Lake Storage 1-го поколения с помощью Microsoft Entra ID.
Создание приложения .NET
В Visual Studio откройте меню Файл и выберите Создать, а затем — Проект.
Выберите Console App (.NET Framework) (Консольное приложение (.NET Framework)), а затем нажмите кнопкуДалее.
В окнеИмя проекта введите
CreateADLApplication
, а затем выберите Создать.Добавьте пакеты NuGet в проект.
В обозревателе решений щелкните правой кнопкой мыши имя проекта и выберите пункт Управление пакетами NuGet.
На вкладке Диспетчер пакетов NuGet в поле Источник пакета выберите nuget.org и установите флажок Включить предварительные выпуски.
Найдите и установите следующие пакеты NuGet:
Microsoft.Azure.Management.DataLake.Store
. В этом руководстве используется предварительная версия 2.1.3.Microsoft.Rest.ClientRuntime.Azure.Authentication
. В этом руководстве используется версия 2.2.12.
Закройте Диспетчер пакетов NuGet.
Откройте файл Program.cs.
Замените операторы using следующими строками:
using System; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Collections.Generic; using Microsoft.Rest; using Microsoft.Rest.Azure.Authentication; using Microsoft.Azure.Management.DataLake.Store; using Microsoft.Azure.Management.DataLake.Store.Models; using Microsoft.IdentityModel.Clients.ActiveDirectory;
Проверка подлинности конечных пользователей
Добавьте следующий фрагмент кода в клиентское приложение .NET. Замените значения заполнителей значениями, полученными из собственного приложения Microsoft Entra (указано в качестве необходимых компонентов). Этот фрагмент кода позволяет выполнять аутентификацию приложения интерактивно с помощью Data Lake Storage 1-го поколения. Это значит, что вам будет предложено ввести учетные данные Azure.
Для удобства использования в следующем фрагменте кода для идентификатора клиента и URI перенаправления используются значения по умолчанию, которые действительны для любой подписки Azure. В следующем фрагменте кода нужно указать только значение для идентификатора клиента. См. инструкции по получению идентификатор клиента.
Замените функцию Main() следующим кодом:
private static void Main(string[] args) { //User login via interactive popup string TENANT = "<AAD-directory-domain>"; string CLIENTID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"; System.Uri ARM_TOKEN_AUDIENCE = new System.Uri(@"https://management.core.windows.net/"); System.Uri ADL_TOKEN_AUDIENCE = new System.Uri(@"https://datalake.azure.net/"); string MY_DOCUMENTS = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments); string TOKEN_CACHE_PATH = System.IO.Path.Combine(MY_DOCUMENTS, "my.tokencache"); var tokenCache = GetTokenCache(TOKEN_CACHE_PATH); var armCreds = GetCreds_User_Popup(TENANT, ARM_TOKEN_AUDIENCE, CLIENTID, tokenCache); var adlCreds = GetCreds_User_Popup(TENANT, ADL_TOKEN_AUDIENCE, CLIENTID, tokenCache); }
Важные сведения о предыдущем фрагменте кода:
- В предыдущем фрагменте используются вспомогательные функции
GetTokenCache
иGetCreds_User_Popup
. Код этих вспомогательных функций см. на этой странице GitHub. - Для быстрого завершения работы с руководством в этом фрагменте кода используется идентификатор клиента собственного приложения, доступный по умолчанию для всех подписок Azure. Таким образом, вы можете использовать в приложении этот фрагмент в исходном виде.
- Однако если вы хотите использовать собственный домен Microsoft Entra и идентификатор клиента приложения, необходимо создать собственное приложение Microsoft Entra, а затем использовать идентификатор клиента Microsoft Entra, идентификатор клиента и URI перенаправления для созданного приложения. Инструкции см. в статье Создание приложения Active Directory для проверки подлинности пользователей в Data Lake Storage 1-го поколения.
Дальнейшие действия
В этой статье вы узнали, как использовать проверку подлинности пользователей, чтобы реализовать проверку подлинности в Data Lake Storage 1-го поколения с помощью .NET SDK. Дополнительные сведения об использовании пакета .NET SDK для работы с Azure Data Lake Storage 1-го поколения см. в следующих статьях.