Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы узнаете, как использовать пакет SDK Java для проверки подлинности между службами с помощью Azure Data Lake Storage 2-го поколения. Проверка подлинности конечных пользователей с помощью Data Lake Storage 2-го поколения с помощью пакета SDK для Java не поддерживается.
Предпосылки
подписка Azure. Посмотрите Получение бесплатной пробной версии Azure.
Создайте приложение Microsoft Entra ID "Web-приложение". Необходимо выполнить действия, описанные в аутентификации между службами с помощью Data Lake Storage 2-го поколения с использованием Microsoft Entra ID.
Maven. В этом руководстве используется Maven для сборки и управления зависимостями проекта. Хотя сборку можно выполнять и без использования таких систем сборки, как Maven или Gradle, они значительно упрощают управление зависимостями.
Интегрированная среда разработки, например IntelliJ IDEA, Eclipse или аналогичная (необязательно).
Аутентификация между службами
Создайте проект Maven с использованием архетипа mvn с помощью командной строки или интегрированной среды разработки (IDE). Инструкции по созданию проекта Java с использованием IntelliJ см. здесь. Инструкции по созданию проекта с использованием Eclipse см. здесь.
Добавьте приведенные ниже зависимости в файл 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, обратная связь или отсутствие ведения журнала. В этом примере мы отключим ведение журнала, так как используем привязку slf4j-nop. Сведения об использовании других параметров ведения журнала в приложении см. в разделе "Объявление зависимостей проекта" для ведения журнала.Добавьте следующие инструкции импорта в приложение.
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;Используйте следующий фрагмент кода в приложении 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 Identity или собственного кода.
Дальнейшие действия
Из этой статьи вы узнали, как использовать проверку подлинности конечных пользователей для проверки подлинности с помощью Data Lake Storage 2-го поколения с помощью пакета SDK для Java. Теперь вы можете ознакомиться со следующими статьями о том, как использовать пакет SDK для Java для работы с Data Lake Storage 2-го поколения.