Refresh Token Rotation
Refresh token rotation is a security technique where the long-lived token used to obtain new access tokens is replaced with a fresh one each time it is used, rather than being reused indefinitely. This limits the usefulness of a stolen refresh token, because an intercepted token typically becomes invalid once a newer one has been issued. It allows an application to keep a user signed in without requiring them to re-authenticate.
Refresh token rotation is a mechanism in OAuth 2.0-based deployments in which the authorization server issues a new refresh token alongside each new access token when a refresh token is redeemed, invalidating the previously issued refresh token. This reduces the exposure window associated with refresh token theft, since a compromised refresh token can typically be used at most once before the legitimate rotation invalidates it; in many implementations, detection of reuse of an already-rotated (superseded) refresh token can trigger revocation of the entire token family. Note that the specific reuse-detection, revocation, and family-tracking behaviors vary by authorization server and configuration and are not uniformly mandated across all deployments. This concept concerns the runtime handling of refresh tokens and is distinct from access token or ID token semantics; the evidence provided does not specify particular standard sections, so exact conformance details are out of scope here.
Why it matters
Refresh tokens are attractive targets because they are long-lived and can be redeemed to obtain fresh access tokens without user interaction. A refresh token that is stolen and reusable indefinitely gives an attacker durable, silent access to a resource on behalf of the compromised user. Refresh token rotation exists to shrink that exposure: by replacing the refresh token on each redemption, a captured token typically becomes useless once the legitimate client has performed a subsequent refresh, narrowing the window in which stolen material has value.
Beyond simply limiting the lifespan of any single token, rotation enables a class of reuse-detection behavior. In many implementations, when an already-rotated (superseded) refresh token is presented again, the authorization server can treat this as a signal of possible theft and revoke the entire token family. This turns an otherwise silent compromise into a detectable event, and can force re-authentication that would not occur with static, reusable refresh tokens. The trade-off is operational: rotation introduces state that must be tracked, and clients must correctly persist and use the newest token to avoid accidental family revocation.
It is important to keep expectations calibrated. Rotation reduces but does not eliminate risk, and the specific reuse-detection, revocation, and family-tracking behaviors vary by authorization server and configuration rather than being uniformly guaranteed. Rotation is one control among several and should be evaluated alongside token binding, short access token lifetimes, and transport protections rather than treated as a complete defense against token theft.
Who it's relevant to
Inside Refresh Token Rotation
Common questions
Answers to the questions practitioners most commonly ask about Refresh Token Rotation.