Проверка подлинности между службами с помощью Azure Data Lake Storage 2-го поколения с помощью Java

Из этой статьи вы узнаете, как использовать пакет SDK для Java для проверки подлинности между службами с помощью Azure Data Lake Storage 2-го поколения. Проверка подлинности конечных пользователей с помощью Data Lake Storage 2-го поколения с помощью пакета SDK для Java не поддерживается.

Предварительные требования

Аутентификация между службами

  1. Создайте проект Maven с использованием архетипа mvn с помощью командной строки или интегрированной среды разработки (IDE). Инструкции по созданию проекта Java с использованием IntelliJ см. здесь. Инструкции по созданию проекта с использованием Eclipse см. здесь.

  2. Добавьте приведенные ниже зависимости в файл Maven pom.xml. Добавьте следующий фрагмент кода перед тегом </project> :

    <dependencies>
      <dependency>
          <groupId>com.azure</groupId>
          <artifactId>azure-storage-file-datalake</artifactId>
          <version>12.6.0</version>
      </dependency>
      <dependency>
          <groupId>com.azure</groupId>
          <artifactId>azure-identity</artifactId>
          <version>1.3.3</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-nop</artifactId>
        <version>1.7.21</version>
      </dependency>
    </dependencies>
    

    Первая зависимость — использовать пакет SDK для Data Lake Storage 2-го поколения (azure-storage-file-datalake) из репозитория Maven. Вторая зависимость — указать платформу ведения журнала (slf4j-nop), используемую для этого приложения. Пакет SDK для Data Lake Storage 2-го поколения использует фасад ведения журнала slf4j, который позволяет выбрать один из популярных платформ ведения журнала, таких как log4j, ведение журнала Java, logback или отсутствие ведения журнала. В этом примере мы отключим ведение журнала, так как используем привязку slf4j-nop. Сведения об использовании других параметров ведения журнала в приложении см. в статье Объявление зависимостей проекта для ведения журнала.

  3. Добавьте следующие инструкции импорта в приложение.

    import com.azure.identity.ClientSecretCredential;
    import com.azure.identity.ClientSecretCredentialBuilder;
    import com.azure.storage.file.datalake.DataLakeDirectoryClient;
    import com.azure.storage.file.datalake.DataLakeFileClient;
    import com.azure.storage.file.datalake.DataLakeServiceClient;
    import com.azure.storage.file.datalake.DataLakeServiceClientBuilder;
    import com.azure.storage.file.datalake.DataLakeFileSystemClient;
    import com.azure.storage.file.datalake.models.ListPathsOptions;
    import com.azure.storage.file.datalake.models.PathAccessControl;
    import com.azure.storage.file.datalake.models.PathPermissions;
    
  4. Используйте следующий фрагмент кода в приложении Java, чтобы получить маркер для веб-приложения Active Directory, созданного ранее с помощью одного из классов StorageSharedKeyCredential (в следующем примере используется credential). Поставщик маркеров кэширует учетные данные, используемые для получения маркера, в памяти, и автоматически продлевает маркер, если срок его действия скоро истечет. Можно создать собственные подклассы StorageSharedKeyCredential , чтобы маркеры получали в коде клиента. Здесь мы будем использовать подкласс из пакета SDK.

    Замените FILL-IN-HERE фактическими значениями веб-приложения Microsoft Entra.

    private static String clientId = "FILL-IN-HERE";
    private static String tenantId = "FILL-IN-HERE";
    private static String clientSecret = "FILL-IN-HERE";
    
    ClientSecretCredential credential = new ClientSecretCredentialBuilder().clientId(clientId).tenantId(tenantId).clientSecret(clientSecret).build();
    

Пакет SDK для Data Lake Storage 2-го поколения предоставляет удобные методы, позволяющие управлять маркерами безопасности, необходимыми для взаимодействия с учетной записью Data Lake Storage 2-го поколения. Однако пакет SDK не требует, чтобы использовались только эти методы. Вы также можете использовать любые другие способы получения маркера, например с помощью клиентской библиотеки удостоверений Azure или собственного пользовательского кода.

Дальнейшие действия

Из этой статьи вы узнали, как использовать проверку подлинности конечных пользователей для проверки подлинности с помощью Data Lake Storage 2-го поколения с помощью пакета SDK для Java. Теперь вы можете ознакомиться со следующими статьями о том, как использовать пакет SDK для Java для работы с Data Lake Storage 2-го поколения.