Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support password rotation: allow Redis to accept an alternative password #4944

Open
wants to merge 2 commits into
base: unstable
Choose a base branch
from

Conversation

sonicloong
Copy link

Reference: #4942

Introduces a requirepass-alt option, in order to achieve password rotation with no downtime. Here's our solution:

  1. Set requirepass-alt <old-password>, and requirepass <new-password>
  2. Notify all users to switch to the new password
  3. Confirm that old password is not used, then remove requirepass-alt

To help server admin check if all clients do start to use the new password, we count the number of requirepass/requirepass-alt matches, and show it in the INFO STATS section.

This can be used to achieve password rotation with no downtime in production:
1. Set requirepass-alt to the old password, requirepass to a new password
2. Notify all users to switch to the new password
3. Confirm that old password is not used, then remove requirepass-alt
Count and show the number of requirepass/requirepass-alt matches.
During password rotation, these stats can help server admin check
if all clients have switched to the new password.
@vkasar
Copy link

vkasar commented May 25, 2018

@antirez We had briefly talked about need for this feature when we met at RedisConf 2018. Can you please review when you get a chance? Thanks!

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants