Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Spring Boot упрощает разработку Spring Cloud Azure. Начальные программы Spring Cloud Azure — это набор удобных дескрипторов зависимостей для включения в приложение. Стартеры отвечают за создание экземпляров объектов и логику их конфигурирования, так что вам не придётся делать это самостоятельно. Каждый модуль starter зависит от spring-cloud-azure-starter, который предоставляет критически важные параметры конфигурации, такие как облачная среда Azure и данные аутентификации. Эти свойства можно настроить, например, в YAML-файле, как показано в следующем примере:
spring:
cloud:
azure:
profile:
tenant-id: <tenant>
cloud-type: Azure
credential:
client-id: ${AZURE_CLIENT_ID}
Заметка
Свойство cloud является необязательным.
Значения, допустимые для tenant-id: common, organizations, consumersили идентификатор клиента. Дополнительные сведения об этих значениях см. в разделе Использована неправильная конечная точка (личные и организационные учетные записи) статьи Ошибка AADSTS50020: учетная запись пользователя от поставщика удостоверений не существует в арендаторе. Сведения о преобразовании однотенантного приложения см. в статье Преобразование однотенантного приложения в мультитенантное в Microsoft Entra ID.
Эти свойства являются необязательными. Если вы не укажете их, Spring Boot пытается автоматически найти их. Дополнительные сведения о том, как Spring Boot находит эти свойства, см. в документации.
Настройка зависимостей
Стартеры Spring Cloud Azure можно использовать двумя способами. Первым способом является использование пакетов SDK Azure с зависимостью spring-cloud-azure-starter, как показано в следующем примере:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-cosmos</artifactId>
</dependency>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter</artifactId>
</dependency>
Второй способ заключается в том, чтобы избежать добавления Azure SDK зависимостей и вместо этого включить Spring Cloud Azure Starter для каждой службы напрямую. Например, при использовании Azure Cosmos DB добавляется следующая зависимость:
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-starter-cosmos</artifactId>
</dependency>
Совет
Список поддерживаемых стартеров см. в разделе Starter dependencies в руководстве разработчика Spring Cloud Azure.
Конфигурация
Заметка
Если вы используете субъект безопасности для проверки подлинности и авторизации с помощью Microsoft Entra ID для доступа к ресурсу Azure, убедитесь, что субъект безопасности имеет достаточно разрешений для доступа к ресурсу Azure. Дополнительные сведения см. в разделе Авторизация доступа с помощьюидентификатора Microsoft Entra.
Свойства конфигурации для каждой службы Azure находятся под префиксомspring.cloud.azure.<azure-service>.
Совет
Список всех свойств конфигурации Azure Spring Cloud см. в разделе свойства конфигурации Spring Cloud Azure.
Базовое использование
Добавьте следующие свойства в файл application.yaml для автоматической настройки клиента Azure Cosmos DB.
spring:
cloud:
azure:
cosmos:
database: ${AZURE_COSMOS_DATABASE_NAME}
endpoint: ${AZURE_COSMOS_ENDPOINT}
consistency-level: eventual
connection-mode: direct
Затем и CosmosClient, и CosmosAsyncClient доступны в контексте, и их можно автоматически внедрить, как показано в следующем примере:
class Demo {
@Autowired
private CosmosClient cosmosClient;
@Override
public void run() {
User item = User.randomUser();
CosmosContainer container = cosmosClient.getDatabase(databaseName).getContainer(containerName);
container.createItem(item);
}
}
Образцы
См. репозиторий azure-spring-boot-samples на сайте GitHub.