Skip to content

Add IAM authentication support for Valkey-GLIDE (ElastiCache/MemoryDB)#68

Merged
ikolomi merged 2 commits intomainfrom
add_iam
Mar 12, 2026
Merged

Add IAM authentication support for Valkey-GLIDE (ElastiCache/MemoryDB)#68
ikolomi merged 2 commits intomainfrom
add_iam

Conversation

@ikolomi
Copy link
Copy Markdown
Collaborator

@ikolomi ikolomi commented Mar 10, 2026

Integrate AWS IAM authentication with GLIDE for connecting to Amazon ElastiCache and MemoryDB clusters. When configured, the GLIDE client automatically generates and refreshes short-lived IAM authentication tokens, eliminating the need for static passwords.

spring-data-valkey:

  • Add AwsServiceType enum (ELASTICACHE, MEMORYDB), IamAuthenticationForGlide record, and useIamAuthentication() builder method to ValkeyGlideClientConfiguration
  • Wire IAM auth config into ServerCredentials via IamAuthConfig in both StandaloneGlideClientAdapter and ClusterGlideClientAdapter
  • Add 12 unit tests covering record creation, null validation, builder integration, and enum resolution

spring-boot-starter-data-valkey:

  • Add nullable IamAuthentication properties class under ValkeyGlide (cluster-name, service, region, refresh-interval-seconds) using the same nullable-object pattern as Sentinel/Cluster
  • Map boot properties to IamAuthenticationForGlide in ValkeyGlideConnectionConfiguration with early validation that all three required fields are present
  • Add IDE hints for iam-authentication.service values in additional-spring-configuration-metadata.json

examples:

  • Add boot-iam-auth example with Spring Boot app, application.properties template, and README with configuration reference

docs:

  • Update root README feature lists for both Spring Data Valkey and Spring Boot Starter

Integrate AWS IAM authentication with GLIDE for connecting to Amazon
ElastiCache and MemoryDB clusters. When configured, the GLIDE client
automatically generates and refreshes short-lived IAM authentication
tokens, eliminating the need for static passwords.

spring-data-valkey:
- Add AwsServiceType enum (ELASTICACHE, MEMORYDB), IamAuthenticationForGlide
  record, and useIamAuthentication() builder method to
  ValkeyGlideClientConfiguration
- Wire IAM auth config into ServerCredentials via IamAuthConfig in both
  StandaloneGlideClientAdapter and ClusterGlideClientAdapter
- Add 12 unit tests covering record creation, null validation, builder
  integration, and enum resolution

spring-boot-starter-data-valkey:
- Add nullable IamAuthentication properties class under ValkeyGlide
  (cluster-name, service, region, refresh-interval-seconds) using the
  same nullable-object pattern as Sentinel/Cluster
- Map boot properties to IamAuthenticationForGlide in
  ValkeyGlideConnectionConfiguration with early validation that all
  three required fields are present
- Add IDE hints for iam-authentication.service values in
  additional-spring-configuration-metadata.json

examples:
- Add boot-iam-auth example with Spring Boot app, application.properties
  template, and README with configuration reference

docs:
- Update root README feature lists for both Spring Data Valkey and
  Spring Boot Starter

Signed-off-by: ikolomi <ikolomin@amazon.com>
@ikolomi ikolomi self-assigned this Mar 10, 2026
@ikolomi ikolomi requested a review from jeremyprime March 10, 2026 15:34
@ikolomi ikolomi added the enhancement New feature or request label Mar 10, 2026
@ikolomi ikolomi added this to the 1.0 GA milestone Mar 10, 2026
Signed-off-by: ikolomi <ikolomin@amazon.com>
@ikolomi ikolomi merged commit 4dc8dbc into main Mar 12, 2026
42 of 43 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Development

Successfully merging this pull request may close these issues.

2 participants