12 Commits

Author SHA1 Message Date
Maksim Nabokikh 546e66cb5d feat: add WebAuthn support (#4704)
Signed-off-by: maksim.nabokikh <max.nabokih@gmail.com>
Signed-off-by: Maksim Nabokikh <max.nabokih@gmail.com>
Co-authored-by: Alwx <alwxsin@gmail.com>
2026-04-02 11:48:46 +02:00
Maksim Nabokikh 363e9d5228 feat: use protobuf for session cookie (#4675)
Signed-off-by: maksim.nabokikh <max.nabokih@gmail.com>
2026-03-20 22:07:41 +01:00
Mark Sagi-Kazar 76de7b3920 build: update Go to 1.24
Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
2025-02-18 13:03:54 +01:00
Mark Sagi-Kazar 70b32eeccc chore: regenerate proto
Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
2024-02-27 14:06:27 +01:00
Mark Sagi-Kazar d8f2628a84 chore: regenerate proto
Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
2023-03-20 12:44:57 +01:00
Mark Sagi-Kazar d25051c867 chore(deps): upgrade protobuf in server/internal package
Signed-off-by: Mark Sagi-Kazar <mark.sagikazar@gmail.com>
2021-03-22 19:27:47 +01:00
Stephan Renatus 291cd9e01c regenerate protobuf code
Signed-off-by: Stephan Renatus <srenatus@chef.io>
2019-07-31 08:16:18 +02:00
Eric Chiang c5de6fa733 *: regenerate proto 2017-12-01 11:29:33 -08:00
Eric Chiang ba1660ae1f *: revendor and regenerate protobuf files 2017-04-13 11:35:41 -07:00
rithu john d201e49248 api: adding a gRPC call for listing refresh tokens. 2017-02-13 16:12:16 -08:00
Eric Chiang f4bbab5056 server/internal: generate protobuf types 2017-01-11 12:07:48 -08:00
Eric Chiang f778b2d33b server: update refresh tokens instead of deleting and creating another
The server implements a strategy called "Refresh Token Rotation" to
ensure refresh tokens can only be claimed once.

ref: https://tools.ietf.org/html/rfc6819#section-5.2.2.3

Previously "refresh_token" values in token responses where just the
ID of the internal refresh object. To implement rotation, when a
client redeemed a refresh token, the object would be deleted, a new
one created, and the new ID returned as the new "refresh_token".

However, this means there was no consistent ID for refresh tokens
internally, making things like foreign keys very hard to implement.
This is problematic for revocation features like showing all the
refresh tokens a user or client has out.

This PR updates the "refresh_token" to be an encoded protobuf
message, which holds the internal ID and a nonce. When a refresh
token is used, the nonce is updated to prevent reuse, but the ID
remains the same. Additionally it adds the timestamp of each
token's last use.
2017-01-11 12:07:48 -08:00