- This release is compatible with Spring Boot 4.0.0-4.0.6. (Note: 4.0.x (x>6) should be supported, but they aren't tested with this release.)
- This release is compatible with Spring Cloud 2025.1.0-2025.1.1. (Note: 2025.1.x (x>1) should be supported, but they aren't tested with this release.)
Spring Cloud Azure Dependencies (BOM)
Dependency Updates
- Upgrade
azure-sdk-bomto 1.3.7.
Spring Cloud Azure Autoconfigure
This section includes changes in spring-cloud-azure-autoconfigure module.
Breaking Changes
- AAD resource server now requires
spring.cloud.azure.active-directory.profile.tenant-idto be set to a specific (non-reserved) tenant ID. Empty string,common,organizations, andconsumersare no longer accepted and will cause application startup to fail with anIllegalArgumentException. (#49033) AadAuthenticationFilternow enables explicit audience validation by default. The filter will verify that the JWT'saud(audience) claim matches eitherspring.cloud.azure.active-directory.credential.client-idorspring.cloud.azure.active-directory.app-id-uri. Tokens issued for other applications will be rejected withBadJWTException. This prevents cross-application token reuse and aligns with OAuth2/OIDC security best practices. (#49033)- B2C resource server now requires
spring.cloud.azure.active-directory.b2c.profile.tenant-idto be set to a specific (non-reserved) tenant ID. Empty string,common,organizations, andconsumersare no longer accepted. In addition, default token validation is hardened to enforce tenant-boundtid, stricteraudvalidation, and B2C-only trusted issuers. (#49252) - Event Hubs auto-configuration now identifies the root
EventHubClientBuilderby bean name (springCloudAzureEventHubsClientBuilder) instead of by type. To override the auto-configured root builder (and have sharedEventHubConsumerClient/EventHubProducerClientuse your bean), register the bean under the namespringCloudAzureEventHubsClientBuilder. A user-suppliedEventHubClientBuilderbean under a different name will no longer suppress the auto-configured root builder and will not be wired into the shared clients. (#49245)
Bugs Fixed
- Fixed Event Hubs autoconfiguration where a dedicated
EventHubClientBuilderregistered byconsumer-only orproducer-only sub-level overrides (connection-string/namespace/event-hub-name) suppressed the root builder and got injected into the opposite shared section, causing the shared client to target the other section's event hub. The root builder is now registered under bean namespringCloudAzureEventHubsClientBuilderwith a name-based@ConditionalOnMissingBean, and the shared consumer/producer sections gate on and inject that specific bean via@Qualifier. (#49245) - Fixed JDBC/Azure Database and Redis passwordless connection scope defaulting using the wrong
azure.scopesvalue for Azure China and Azure US Government whenspring.cloud.azure.profile.cloud-typeis set toazure_chinaorazure_us_government. The scopes are now correctly derived from the merged cloud type. (#47096) - Fixed Service Bus autoconfiguration for dedicated producer, consumer, and processor connection details so applications can initialize with only sub-level Service Bus
namespaceorconnection-stringsettings and no top-level Service Bus connection configuration. (#49257)
Spring Cloud Azure Stream Binder Service Bus
This section includes changes in spring-cloud-azure-stream-binder-servicebus module.
Features Added
- Add support for Spring Cloud Stream consumer retry properties (
maxAttempts,backOffInitialInterval,
backOffMaxInterval,backOffMultiplier) to enable retry with exponential backoff for message processing
failures. #47135. - Add support for injecting a custom
RetryTemplatefrom Spring context for advanced retry scenarios.
#47135.
Spring Cloud Azure Service
This section includes changes in spring-cloud-azure-service module.
Features Added
- Support
AzurePipelinesCredentialin Azure Event Hubs for Kafka passwordless connection (#49108). It only takes effect when all the following 4 environment variables exist at runtime:AZURESUBSCRIPTION_SERVICE_CONNECTION_IDAZURESUBSCRIPTION_CLIENT_IDAZURESUBSCRIPTION_TENANT_IDSYSTEM_ACCESSTOKEN
Azure Spring Data Cosmos
This section includes changes in azure-spring-data-cosmos module.
Please refer to azure-spring-data-cosmos/CHANGELOG.md for more details.