Skip to content

Bump the minor-patch group in /ams-spring-boot-shopping with 2 updates - #126

Merged
finkmanAtSap merged 1 commit into
mainfrom
dependabot/maven/ams-spring-boot-shopping/minor-patch-82a9bd9a94
Oct 26, 2026
Merged

finkmanAtSap merged 1 commit into
mainfrom
dependabot/maven/ams-spring-boot-shopping/minor-patch-82a9bd9a94

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 26, 2026

Copy link
Copy Markdown
Contributor

Bumps the minor-patch group in /ams-spring-boot-shopping with 2 updates: com.sap.cloud.security:java-bom and org.apache.maven.plugins:maven-surefire-plugin.

Updates com.sap.cloud.security:java-bom from 4.1.2 to 4.2.0

Release notes

Sourced from com.sap.cloud.security:java-bom's releases.

4.2.0

  • Distributed cache support for the internal token, JWKS, and OIDC discovery caches
    • The library's three internal caches previously lived only in the JVM's memory: after every restart or rolling deploy every pod re-fetched signing keys and re-issued its own tokens from XSUAA / IAS, causing cold-start latency and thundering-herd traffic against the identity services
    • New SecurityCache<String,String> SPI (java-api) behind all three caches; the in-memory Caffeine implementation remains the default, so existing applications see no behavior change
    • Two adapters ship out of the box: CaffeineSecurityCache (in-process default) and SpringCacheSecurityCache (wraps any Spring CacheManager backend such as Redis or Hazelcast); any other backend can be implemented against the SPI (copy-paste snippets in the main README)
    • Spring Boot: opt-in via sap.security.cache.distributed.enabled=true; the auto-configuration wires a SecurityCache bean from a user-supplied bean or a CacheManager cache named sap-security (configurable via sap.security.cache.distributed.cache-name) and fails fast with a clear error if no backing store is present
    • Plain Java: pass a SecurityCache to the DefaultOAuth2TokenService constructor (token cache) or JwtValidatorBuilder.withSecurityCache(...) / AbstractTokenAuthenticator.withSecurityCache(...) (JWKS + OIDC caches)
    • Cache entries are raw JSON strings and keys are namespaced (tokens:, jwks:, oidc:), so entries are safe to share across processes; token request fingerprints are SHA-256 hashed, so client secrets never appear in the key space or logs
    • Concurrent misses for the same key are collapsed into a single upstream call in all three caches (single-flight)
    • See the main README, section "2.5 Distributed Caching", for setup, bring-your-own-cache snippets, operational notes, and known limitations
  • Negative caching of stable JWKS retrieval failures
    • A /token_keys call that fails with a client error (4xx, e.g. a 404 for an unknown zone id) is now remembered for 30 seconds: repeated requests for the same invalid key fail fast with an exception instead of each triggering a new call to the identity service, so a stream of invalid tokens can no longer keep exhausting HTTP resources
    • Transient failures — server errors (5xx), timeouts, transport errors — are not negatively cached, so the next request retries immediately
    • After the 30-second window the next request retries the retrieval
  • CaffeineSecurityCache now honors per-entry TTLs
    • SecurityCache.set(key, value, ttl) durations shorter than the cache-wide default (as used by the 30-second negative cache entries) are now respected by the Caffeine adapter via Caffeine's Expiry policy; previously the per-entry TTL argument was ignored
  • Send the x-azp_app_tid request header when fetching IAS signing keys
    • When validating an IAS token, the azp_app_tid claim is now forwarded as an x-azp_app_tid header on the /token_keys request (only when the claim is present), mirroring the @sap/xssec 4.15.0 behavior
  • Update dependencies:
    • Jetty: 12.1.12 → 12.1.14
    • SLF4J API: 2.0.18 → 2.0.20
    • Mockito: 5.23.0 → 5.24.0
    • Maven Surefire Plugin: 3.5.6 → 3.6.0
    • org.json: 20260719 → 20260814
    • SpotBugs: 4.10.4 → 4.10.5 (annotations and Maven plugin)
    • Sonatype Central Publishing Maven Plugin: 0.11.0 → 0.12.0
    • logcaptor (test scope): 2.12.7 → 2.13.0 — addresses CVE-2026-104721 via updated logback-classic transitive dependency
Changelog

Sourced from com.sap.cloud.security:java-bom's changelog.

4.2.0

  • Distributed cache support for the internal token, JWKS, and OIDC discovery caches
    • The library's three internal caches previously lived only in the JVM's memory: after every restart or rolling deploy every pod re-fetched signing keys and re-issued its own tokens from XSUAA / IAS, causing cold-start latency and thundering-herd traffic against the identity services
    • New SecurityCache<String,String> SPI (java-api) behind all three caches; the in-memory Caffeine implementation remains the default, so existing applications see no behavior change
    • Two adapters ship out of the box: CaffeineSecurityCache (in-process default) and SpringCacheSecurityCache (wraps any Spring CacheManager backend such as Redis or Hazelcast); any other backend can be implemented against the SPI (copy-paste snippets in the main README)
    • Spring Boot: opt-in via sap.security.cache.distributed.enabled=true; the auto-configuration wires a SecurityCache bean from a user-supplied bean or a CacheManager cache named sap-security (configurable via sap.security.cache.distributed.cache-name) and fails fast with a clear error if no backing store is present
    • Plain Java: pass a SecurityCache to the DefaultOAuth2TokenService constructor (token cache) or JwtValidatorBuilder.withSecurityCache(...) / AbstractTokenAuthenticator.withSecurityCache(...) (JWKS + OIDC caches)
    • Cache entries are raw JSON strings and keys are namespaced (tokens:, jwks:, oidc:), so entries are safe to share across processes; token request fingerprints are SHA-256 hashed, so client secrets never appear in the key space or logs
    • Concurrent misses for the same key are collapsed into a single upstream call in all three caches (single-flight)
    • See the main README, section "2.5 Distributed Caching", for setup, bring-your-own-cache snippets, operational notes, and known limitations
  • Negative caching of stable JWKS retrieval failures
    • A /token_keys call that fails with a client error (4xx, e.g. a 404 for an unknown zone id) is now remembered for 30 seconds: repeated requests for the same invalid key fail fast with an exception instead of each triggering a new call to the identity service, so a stream of invalid tokens can no longer keep exhausting HTTP resources
    • Transient failures — server errors (5xx), timeouts, transport errors — are not negatively cached, so the next request retries immediately
    • After the 30-second window the next request retries the retrieval
  • CaffeineSecurityCache now honors per-entry TTLs
    • SecurityCache.set(key, value, ttl) durations shorter than the cache-wide default (as used by the 30-second negative cache entries) are now respected by the Caffeine adapter via Caffeine's Expiry policy; previously the per-entry TTL argument was ignored
  • Send the x-azp_app_tid request header when fetching IAS signing keys
    • When validating an IAS token, the azp_app_tid claim is now forwarded as an x-azp_app_tid header on the /token_keys request (only when the claim is present), mirroring the @sap/xssec 4.15.0 behavior
  • Update dependencies:
    • Jetty: 12.1.12 → 12.1.14
    • SLF4J API: 2.0.18 → 2.0.20
    • Mockito: 5.23.0 → 5.24.0
    • Maven Surefire Plugin: 3.5.6 → 3.6.0
    • org.json: 20260719 → 20260814
    • SpotBugs: 4.10.4 → 4.10.5 (annotations and Maven plugin)
    • Sonatype Central Publishing Maven Plugin: 0.11.0 → 0.12.0
    • logcaptor (test scope): 2.12.7 → 2.13.0 — addresses CVE-2026-104721 via updated logback-classic transitive dependency
Commits
  • 0732e26 Build(deps-dev): Bump io.github.hakky54:logcaptor from 2.12.7 to 2.13.0 in th...
  • 1c25e8e Merge pull request #2053 from SAP/chore/dependabot-3.x-no-majors
  • eaa6bd6 Merge branch 'main' into chore/dependabot-3.x-no-majors
  • 6499a38 chore: stop Dependabot from proposing major upgrades on main-3.x
  • d44f48c Merge pull request #2051 from SAP/release-4.2.0-integration
  • ef2e56b Merge branch 'main' into release-4.2.0-integration
  • c49433a Merge pull request #2034 from SAP/feature/jwks-azp-app-tid-header
  • b2c740e Merge branch 'main' into feature/jwks-azp-app-tid-header
  • 99c6043 chore: Bump project version 4.1.2 → 4.2.0 across all modules, READMEs and sam...
  • ea17d8e Merge remote-tracking branch 'origin/dependabot/maven/org.json-json-20260814'...
  • Additional commits viewable in compare view

Updates org.apache.maven.plugins:maven-surefire-plugin from 3.6.0 to 3.6.1

Release notes

Sourced from org.apache.maven.plugins:maven-surefire-plugin's releases.

3.6.1

🚀 New features and improvements

🐛 Bug Fixes

📝 Documentation updates

  • Clean up deprecated parameters and fix TestNG parallel modes (#3452) (#3519) @​olamy
  • Merge the two timeout extension pages into one. The guide and the example page covered the same things twice. (#3520) @​olamy
  • Drop the Source Xref menu items (#3479) @​slachiewicz

👻 Maintenance

🔧 Build

... (truncated)

Commits
  • 5bf0dcf [maven-release-plugin] prepare release surefire-3.6.1
  • 7f73580 Bump doxiaVersion from 2.1.0 to 2.2.0 (#3542)
  • ab7ce2f Bump org.testng:testng (#3539)
  • ff3b768 Group module path heuristics in ModulePathJpmsArguments (#3541)
  • a343e4d Fix IllegalAccessError when the main module requires JUnit (#3532) (#3538)
  • 907a2e2 Fix groups and excludedGroups being ignored when TestNG is on the classpath (...
  • cc69b3c Use push for PR Automation
  • b119019 Install the JUnit Platform provider for the ITs (#3535)
  • 2cdec2e Don't let runOrder replace JUnit orderers set elsewhere (#3529) (#3530)
  • 1e4f6b9 Use workflow_run for PR check (#3531)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the minor-patch group in /ams-spring-boot-shopping with 2 updates: [com.sap.cloud.security:java-bom](https://github.com/SAP/cloud-security-xsuaa-integration) and [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire).


Updates `com.sap.cloud.security:java-bom` from 4.1.2 to 4.2.0
- [Release notes](https://github.com/SAP/cloud-security-xsuaa-integration/releases)
- [Changelog](https://github.com/SAP/cloud-security-services-integration-library/blob/main/CHANGELOG.md)
- [Commits](SAP/cloud-security-services-integration-library@4.1.2...4.2.0)

Updates `org.apache.maven.plugins:maven-surefire-plugin` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](apache/maven-surefire@surefire-3.6.0...surefire-3.6.1)

---
updated-dependencies:
- dependency-name: com.sap.cloud.security:java-bom
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-patch
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-version: 3.6.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update java code labels Oct 26, 2026
@finkmanAtSap
finkmanAtSap merged commit e06fd77 into main Oct 26, 2026
11 checks passed
@finkmanAtSap
finkmanAtSap deleted the dependabot/maven/ams-spring-boot-shopping/minor-patch-82a9bd9a94 branch October 26, 2026 13:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant