Automaticky konfigurovat klienty sady Azure SDK

Spring Boot zjednodušuje vývojové prostředí Azure Spring Cloud. Startéry Spring Cloud Azure jsou sadou praktických popisovačů závislostí, které můžete zahrnout do své aplikace. Startery zajišťují vytváření instancí objektů a logiku konfigurace, takže to nemusíte dělat vy. Každá úvodní sada závisí na spring-cloud-azure-starter, aby poskytovala kritické bity konfigurace, jako jsou cloudové prostředí Azure a ověřovací informace. Můžete je nakonfigurovat jako vlastnosti například v souboru YAML, jak je znázorněno v následujícím příkladu:

spring:
  cloud:
    azure:
      profile:
        tenant-id: <tenant>
        cloud-type: Azure
      credential:
        client-id: ${AZURE_CLIENT_ID}

Poznámka

Vlastnost cloud je volitelná.

Hodnoty povolené pro tenant-id jsou: common, organizations, consumersnebo ID tenanta. Další informace o těchto hodnotách najdete v části Byl použit nesprávný koncový bod (osobní účty a účty organizací) v článku Chyba AADSTS50020 – Uživatelský účet od poskytovatele identity v tenantovi neexistuje. Informace o převodu aplikace s jedním tenantem najdete v tématu Převod jednoklientských aplikací na víceklienta vMicrosoft Entra ID .

Tyto vlastnosti jsou volitelné. Pokud je nezadáte, Spring Boot se pokusí je automaticky najít za vás. Podrobnosti o tom, jak Spring Boot tyto vlastnosti najde, najdete v dokumentaci.

Nastavení závislostí

Startovací balíčky Spring Cloud Azure můžete používat dvěma způsoby. Prvním způsobem je použít sady Azure SDK se závislostí spring-cloud-azure-starter, jak je znázorněno v následujícím příkladu:

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

Druhým způsobem je vyhnout se přidávání Azure SDK závislostí a místo toho zahrnout Spring Cloud Azure Starter pro každou službu přímo. Například s Azure Cosmos DB přidáte následující závislost:

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

Tip

Seznam podporovaných starterů najdete v části Závislosti starterů v příručce pro vývojáře Spring Cloud Azure.

Konfigurace

Poznámka

Pokud použijete objekt zabezpečení k ověření a autorizaci s Microsoft Entra ID pro přístup k Azure prostředku, ujistěte se, že má objekt zabezpečení dostatečná oprávnění pro přístup k Azure prostředku. Další informace naleznete v tématu Autorizace přístupu pomocí microsoft Entra ID.

Vlastnosti konfigurace pro každou službu Azure jsou pod předponou spring.cloud.azure.<azure-service>.

Tip

Seznam všech vlastností konfigurace Azure Spring Cloud najdete v tématu Vlastnosti konfigurace Spring Cloud Azure.

Základní využití

Přidejte do souboru application.yaml následující vlastnosti pro automatickou konfiguraci klienta Azure Cosmos DB.

spring:
  cloud:
    azure:
      cosmos:
        database: ${AZURE_COSMOS_DATABASE_NAME}
        endpoint: ${AZURE_COSMOS_ENDPOINT}
        consistency-level: eventual
        connection-mode: direct

Poté jsou v kontextu k dispozici jak CosmosClient, tak CosmosAsyncClient a můžete je automaticky propojit, jak ukazuje následující příklad:

class Demo {
@Autowired
private CosmosClient cosmosClient;

    @Override
    public void run() {
        User item = User.randomUser();
        CosmosContainer container = cosmosClient.getDatabase(databaseName).getContainer(containerName);
        container.createItem(item);
    }
}

Vzorky

Podívejte se na azure-spring-boot-samples úložiště na GitHubu.