Поделиться через


Spring Cloud Azure Resource Manager

Эта статья относится к:✅ версии 4.19.0 ✅ версии 5.19.0

Azure Resource Manager (ARM) — это служба развертывания и управления для Azure. Он предоставляет уровень управления, позволяющий создавать, обновлять и удалять ресурсы в учетной записи Azure. Spring Cloud Azure Resource Manager может помочь подготовить ресурсы или получить метаданные ресурсов.

Настройка зависимостей

<dependency>
  <groupId>com.azure.spring</groupId>
  <artifactId>spring-cloud-azure-resourcemanager</artifactId>
</dependency>

Конфигурация

Заметка

Если вы решили использовать субъект безопасности для проверки подлинности и авторизации с помощью идентификатора Microsoft Entra для доступа к ресурсу Azure, ознакомьтесь с авторизовать доступ с помощью идентификатора Microsoft Entra ID, чтобы убедиться, что субъект безопасности получил достаточное разрешение на доступ к ресурсу Azure.

Настраиваемые свойства spring-cloud-azure-resourcemanager:

Свойство Описание
spring.cloud.azure.resource-manager.enabled Включена ли диспетчер ресурсов. Значение по умолчанию — true.
spring.cloud.azure.credential.client-id Идентификатор клиента, используемый при выполнении проверки подлинности субъекта-службы с помощью Azure.
spring.cloud.azure.credential.client-secret Секрет клиента, используемый при выполнении проверки подлинности субъекта-службы с помощью Azure.
spring.cloud.azure.credential.client-certificate-path Путь к файлу сертификата PEM для использования при выполнении проверки подлинности субъекта-службы с помощью Azure.
spring.cloud.azure.credential.client-certificate-password Пароль файла сертификата.
spring.cloud.azure.credential.username Имя пользователя, используемое при выполнении проверки подлинности имени пользователя или пароля в Azure.
spring.cloud.azure.credential.password Пароль, используемый при выполнении проверки подлинности имени пользователя или пароля.
spring.cloud.azure.credential.managed-identity-enabled Следует ли включить управляемое удостоверение.
spring.cloud.azure.profile.cloud-type Имя облака Azure для подключения.
spring.cloud.azure.profile.environment.active-directory-endpoint Конечная точка Microsoft Entra для подключения к проверке подлинности.
spring.cloud.azure.profile.subscription-id Идентификатор подписки, используемый при подключении к ресурсам Azure.
spring.cloud.azure.profile.tenant-id Идентификатор клиента для ресурсов Azure. Значения, допустимые для tenant-id: common, organizations, consumersили идентификатор клиента.
spring.cloud.azure.azure-serviceпространство имен Пространство имен службы Azure для подготовки ресурсов.
spring.cloud.azure.azure-service.resource.resource-group Группа ресурсов, содержащая ресурс службы Azure.

Базовое использование

Spring Cloud Azure Resource Manager может работать вместе с конкретными начальными средствами Azure Spring Cloud для получения сведений о подключении, таких как строки подключения, для подключения к службам Azure. Он также может работать вместе с spring-cloud-azure-starter и сторонними библиотеками для получения метаданных, таких как имя пользователя или пароль, и для завершения проверки подлинности. Дополнительные сведения см. в поддержке Azure Kafka Azure Kafka и поддержке Spring Cloud Azure Redis.

Например, чтобы получить строку подключения службы Azure, разработчики могут использовать субъект-службу в качестве учетных данных для проверки подлинности и извлечения строки подключения. Конфигурация указана ниже. Предоставленный субъект-служба должен быть назначен ролью Contributor связанного пространства имен по крайней мере. Ознакомьтесь с авторизацией доступа с помощью идентификатора Microsoft Entra ID, чтобы убедиться, что субъект получил достаточное разрешение на доступ к ресурсу Azure.

spring:
  cloud:
    azure:
      credential:
        client-id: ${AZURE_CLIENT_ID}
        client-secret: ${AZURE_CLIENT_SECRET}
      profile:
        tenant-id: <tenant>
        subscription-id: ${AZURE_SUBSCRIPTION_ID}
      <azure-service>:
        namespace: ${SERVICEBUS_NAMESPACE}
        resource:
          resource-group: ${RESOURCE_GROUP}

Заметка

Значения, допустимые для tenant-id: common, organizations, consumersили идентификатор клиента. Дополнительные сведения об этих значениях см. в разделе Используется неправильная конечная точка (личные учетные записи и учетные записи организации) ошибки AADSTS50020. Учетная запись пользователя от поставщика удостоверений не существует вклиента. Сведения о преобразовании приложения с одним клиентом см. в статье Преобразование однотенантного приложения в мультитенантное приложение наидентификатора Microsoft Entra.

Образцы

Дополнительные сведения см. в репозитории azure-spring-boot-samples на сайте GitHub.