Add live Redis-backed admin key propagation across replicas#527
Add live Redis-backed admin key propagation across replicas#527Iweisc wants to merge 3 commits intolabring:mainfrom
Conversation
|
I have some cool safety features in my mind that requires the ADMIN_KEY to hot-reload WITHOUT the deployments restarting. |
|
One of those features could be like a fail-safe that triggers when certain actions are invoked, and you can rotate the ADMIN_KEY on the fly without any disruptions. The feature opens up a door to wide range of features. Oh and it has some nice performance boosts too. |
|
You can even count admin/internal key matches with near-zero hot-path cost because the match logic is precomputed. |
|
sertdev seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
|
Here are some cool use cases and features this opens up the door to, while i may not open follow up PRs with these features, i plan to follow up on some:
I believe, since we are pre-computing tokenVariants, adminKeyState, internalTokenState, etc etc. I believe with the speed enhancements, it'll allow for EVEN more features, that were previously impractical before because of the speed. |
|
Thank you for your contribution; please sign the CLA. |
|
@zijiren233 doesn't seem to be working for me, but i'll try again. |
|
A commit has two contributors; sertdev has not signed the CLA, preventing CI execution. |
No. So, the thing is that "sertdev" is actually me, i am assuming the bot is detecting two contributors because i set my git config to the name sertdev instead of it matching the github name.....i can't really sign as sertdev. |
|
You may have used an incorrect commit email/username. Please sign the CLA correctly and resolve the conflicts. |

ADMIN_KEYis bootstrapped into a scoped Redis slot withSETNX500ms/apiauth continues using in-memory state, so request handling does not hit Redis