-
Notifications
You must be signed in to change notification settings - Fork 6
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
kafka redemption should permit redemption with non-current but still valid keys #490
Comments
Here's what I think needs to change to enable this:
It's also worth noting that we will need an additional issue to represent the work of automating key rotation. This issue is narrowly focused on ensuring desired behavior when keys are manually rotated. |
1a - Makes sense to me, if we have a public key use that for the lookup. Do we need to consider an EOL field for keys (end_at possibly) for redemptions to be allowed? |
1a. Yes, I think |
Currently the logic in
signed_token_redeem_handler
only checks for redemption against the most recent key for each issuer:challenge-bypass-server/kafka/signed_token_redeem_handler.go
Lines 158 to 162 in 1a4af4e
This means that when we rotate keys every single previously issued token immediately becomes invalid and non-redeemable, making rotation impractical. (Or forcing us to treat non-redeemable keys as valid, as we had to do this time.)
Instead, it should attempt token redemption if a key exists with the supplied public key and has a
null
or futureend_at
timestamp. This will allows a cross-over period after rotation.The text was updated successfully, but these errors were encountered: