Open ChefAustin opened 4 months ago
Hey @ChefAustin! Sorry for the delayed response.
If I'm understanding correctly, Fleet today supports basic auth (username + pwd) for Redis (Redis server config here).
Basic auth isn't good enough.
We could base new Redis config options off of the existing Firehose config options here.
Sounds like the right summary?
Also, we would definitely be open to reviewing / helping with a PR to add this config. Let us know how we can help!
In the meantime, the plan is to weigh this request at the next feature fest on 2024-08-01.
@noahtalerman Summary sounds correct to me.
Linked to Unthread ticket:
Problem
[ Along in the lines of #1817 ]
As an infrastructure engineer, I want to enable AWS IAM authentication for the Elasticache Redis cluster in Fleet so that I can enhance the security model and simplify administrative tasks.
Infrastructure engineers managing the Fleet deployment need to secure their Elasticache Redis clusters. The current methods—unauthenticated connections or username/password—pose security risks and administrative burdens. Integrating AWS IAM authentication would provide a more secure and manageable solution by leveraging short-lived tokens instead of long-lived credentials.
What have you tried?
Having looked through Fleet Server Configuration docs, this authentication method does not seem to be achievable in Fleet's current state.
Potential solutions
Use the existing IAM authentication implementation for Firehose as a loose guide for implementing this with Elasticache Redis.
Acceptance Criteria
Additional Information
• Known limitations and considerations for IAM authentication with Elasticache Redis can be found here: AWS ElastiCache IAM Authentication Limits.
What is the expected workflow as a result of your proposal?
Create an AWS IAM Role with the necessary permissions to communicate with Elasticache Redis, configure
FLEET_REDIS_ADDRESS
&FLEET_REDIS_ASSUME_ROLE_ARN
and let AWS SDK do the rest.