Проверка подлинности без пароля с помощью Spring Cloud Azure

В этой статье представлены расширения удостоверений Azure и объясняется, как реализовать проверку подлинности без пароля для безопасного подключения приложений Azure Spring Cloud к службам Azure. Устраняя необходимость хранения учетных данных в коде приложения, файлах конфигурации или переменных среды, можно повысить безопасность и упростить настройку.

Основные возможности

Расширения удостоверений Azure

Расширения удостоверений Azure основаны на библиотеке удостоверений Azure и упрощают проверку подлинности для идентификатора Microsoft Entra и других служб Azure. Она предоставляет общую платформу шаблонов для пользователей для получения маркера из идентификатора Microsoft Entra с помощью различных типов учетных данных, включая:

  • ClientSecretCredential
  • ClientCertificateCredential
  • ManagedIdentityCredential
  • DefaultAzureCredential

После получения маркера он служит заменой традиционного пароля. Расширения также включают следующие подключаемые модули для упрощения проверки подлинности базы данных с помощью идентификатора Microsoft Entra:

  • AzureMysqlAuthenticationPlugin
  • AzurePostgresqlAuthenticationPlugin

Интеграция Spring Boot

Spring Cloud Azure основывается на расширениях удостоверений Azure для более высокого уровня, более удобной реализации, которая позволяет разработчикам сосредоточиться на бизнес-логике, а не на настройке ручной проверки подлинности. Следующие автоматически настроенные бобы упрощают интеграцию:

Руководства по реализации

Подключение к MySQL

Spring Cloud Azure использует AzureMysqlAuthenticationPlugin для преобразования маркера Microsoft Entra в пароль, совместимый с MySQL. Дополнительные сведения см. в разделе поддержки Azure MySQL Spring Cloud и примера репозитория.

Подключение к PostgreSQL

Для PostgreSQL Azure Spring Cloud использует AzurePostgresqlAuthenticationPlugin для перевода токена Microsoft Entra в пароль, распознанный PostgreSQL. Дополнительные сведения см. в разделе поддержки Azure PostgreSQL Spring Cloud и примера репозитория.

Подключение к Redis

Чтобы включить проверку подлинности без пароля для Redis, Azure Spring Cloud использует AzureAuthenticationTemplate для преобразования маркера Microsoft Entra в допустимые учетные данные Redis. Дополнительные сведения см. в разделе поддержки Spring Cloud Для Redis и примера репозитория.

Подключение к JMS служебной шины Azure

Для JMS служебной шины Azure Spring Cloud использует TokenCredentialProviderOptions для передачи маркера Microsoft Entra в учетные данные JMS служебной шины Azure. Дополнительные сведения см. в разделе "Использование служебной шины Azure" с JMS и примером репозитория.