Skip to content

Commit d80b145

Browse files
authored
docs: merge duplicate/conflicting revoke resource token articles (#902)
* remove unhelpful revoke token article * add root pages, refresh token rotation section, and move refresh token articles into refresh token section * combine and tidy revoke refresh token article
1 parent a3a176b commit d80b145

5 files changed

Lines changed: 80 additions & 339 deletions

File tree

main/docs.json

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2075,21 +2075,25 @@
20752075
"docs/secure/tokens/delegation-tokens",
20762076
{
20772077
"group": "Refresh Tokens",
2078+
"root": "docs/secure/tokens/refresh-tokens",
20782079
"pages": [
2079-
"docs/secure/tokens/refresh-tokens",
20802080
"docs/secure/tokens/refresh-tokens/get-refresh-tokens",
20812081
"docs/secure/tokens/refresh-tokens/use-refresh-tokens",
20822082
"docs/secure/tokens/refresh-tokens/configure-refresh-token-expiration",
2083-
"docs/secure/tokens/refresh-tokens/refresh-token-rotation",
2084-
"docs/secure/tokens/refresh-tokens/configure-refresh-token-rotation",
2085-
"docs/secure/tokens/refresh-tokens/use-refresh-token-rotation",
2086-
"docs/secure/tokens/refresh-tokens/disable-refresh-token-rotation",
20872083
"docs/secure/tokens/refresh-tokens/revoke-refresh-tokens",
2088-
"docs/secure/tokens/refresh-tokens/manage-refresh-tokens-actions",
2084+
{
2085+
"group": "Refresh Token Rotation",
2086+
"root": "docs/secure/tokens/refresh-tokens/refresh-token-rotation",
2087+
"pages": [
2088+
"docs/secure/tokens/refresh-tokens/configure-refresh-token-rotation",
2089+
"docs/secure/tokens/refresh-tokens/use-refresh-token-rotation",
2090+
"docs/secure/tokens/refresh-tokens/disable-refresh-token-rotation"
2091+
]
2092+
},
20892093
{
20902094
"group": "Refresh Token Metadata",
2095+
"root": "docs/secure/tokens/refresh-tokens/refresh-token-metadata",
20912096
"pages": [
2092-
"docs/secure/tokens/refresh-tokens/refresh-token-metadata",
20932097
"docs/secure/tokens/refresh-tokens/refresh-token-metadata/configure-refresh-token-metadata",
20942098
"docs/secure/tokens/refresh-tokens/refresh-token-metadata/use-cases"
20952099
]
@@ -2100,11 +2104,10 @@
21002104
"docs/secure/tokens/refresh-tokens/multi-resource-refresh-token",
21012105
"docs/secure/tokens/refresh-tokens/multi-resource-refresh-token/configure-and-implement-multi-resource-refresh-token"
21022106
]
2103-
}
2107+
},
2108+
"docs/secure/tokens/refresh-tokens/manage-refresh-tokens-actions"
21042109
]
21052110
},
2106-
"docs/secure/tokens/revoke-tokens",
2107-
"docs/secure/tokens/manage-refresh-tokens-with-auth0-management-api",
21082111
"docs/secure/tokens/token-best-practices"
21092112
]
21102113
}
@@ -10494,6 +10497,10 @@
1049410497
]
1049510498
},
1049610499
"redirects": [
10500+
{
10501+
"source": "docs/secure/tokens/manage-refresh-tokens-with-auth0-management-api",
10502+
"destination": "docs/secure/tokens/refresh-tokens/revoke-refresh-tokens"
10503+
},
1049710504
{
1049810505
"source": "docs/customize/phone-messages/customize-phone-templates",
1049910506
"destination": "docs/customize/phone-messages/phone-templates"
@@ -14306,17 +14313,21 @@
1430614313
"source": "/docs/api-auth/tutorials/adoption/delegation",
1430714314
"destination": "/docs/secure/tokens/delegation-tokens"
1430814315
},
14316+
{
14317+
"source": "/docs/secure/tokens/revoke-tokens",
14318+
"destination": "/docs/secure/tokens"
14319+
},
1430914320
{
1431014321
"source": "/docs/security/tokens/revoke-tokens",
14311-
"destination": "/docs/secure/tokens/revoke-tokens"
14322+
"destination": "/docs/secure/tokens"
1431214323
},
1431314324
{
1431414325
"source": "/docs/tokens/guides/revoke-tokens",
14315-
"destination": "/docs/secure/tokens/revoke-tokens"
14326+
"destination": "/docs/secure/tokens"
1431614327
},
1431714328
{
1431814329
"source": "/docs/tokens/revoke-tokens",
14319-
"destination": "/docs/secure/tokens/revoke-tokens"
14330+
"destination": "/docs/secure/tokens"
1432014331
},
1432114332
{
1432214333
"source": "/docs/security/tokens/refresh-tokens/revoke-refresh-tokens",

main/docs/secure/tokens/manage-refresh-tokens-with-auth0-management-api.mdx

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
---
2+
title: Manage Refresh Tokens with the Management API
23
description: Learn how to manage refresh tokens with the Auth0 Management API.
3-
title: Manage Refresh Tokens with Auth0 Management API
44
---
5-
Auth0 issues a <Tooltip tip="Refresh Token: Token used to obtain a renewed Access Token without forcing users to log in again." cta="View Glossary" href="/docs/glossary?term=refresh+token">refresh token</Tooltip> as a credential artifact that your application can use to get a new <Tooltip tip="Refresh Token: Token used to obtain a renewed Access Token without forcing users to log in again." cta="View Glossary" href="/docs/glossary?term=access+token">access token</Tooltip> without user interaction. This allows Auth0 to shorten the access token lifetime for security purposes without involving the user when the access token expires.
65

76
<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
8-
97
The Auth0 Management API refresh token endpoints are currently are available to customers on Enterprise plans. To learn more, read [Pricing](https://auth0.com/pricing).
10-
118
</Callout>
129

1310
## Management API endpoints
@@ -50,8 +47,6 @@ The refresh <Tooltip tip="Token Endpoint: Endpoint on the Authorization Server t
5047
* Refresh token revocation (`DELETE`) operations run asynchronously, and are eventually consistent.
5148
* Refresh tokens issued on or after 21-09-2023 (22-02-2024 for tenants in the US-3 region) contain the session ID (`session_id`) property with the appropriate value. Refresh tokens issued before this date contain this property with a `null` value.
5249

53-
To learn more about refresh tokens limitations, read [Refresh Tokens limitations](/docs/secure/tokens/refresh-tokens).
54-
5550
## Learn more
5651

5752
* [Refresh Tokens](/docs/secure/tokens/refresh-tokens)

main/docs/secure/tokens/refresh-tokens/manage-refresh-tokens-actions.mdx

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
---
2+
title: Manage Refresh Tokens with Actions
23
description: Learn about managing Refresh Tokens with Actions
3-
title: Refresh Tokens with Actions
44
---
5+
56
Using <Tooltip tip="Refresh Token: Token used to obtain a renewed Access Token without forcing users to log in again." cta="View Glossary" href="/docs/glossary?term=Refresh+tokens">Refresh tokens</Tooltip> with [Actions](/docs/customize/actions) allows you to configure post-authentication risk detection and response capabilities to protect your applications and users against compromised refresh tokens. You can also dynamically customize the [refresh token expirations](/docs/secure/tokens/refresh-tokens/configure-refresh-token-expiration).
67

78
To facilitate this, post-login Actions feature two key objects:
@@ -52,13 +53,11 @@ You can use these methods to dynamically customize the refresh token lifetime an
5253
* Any other dynamic criteria available during execution of the Action
5354

5455
<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
55-
5656
The `api.refreshToken.setExpiresAt(absolute)` and `api.refreshToken.setIdleExpiresAt(idle)` methods allow to define the expiration of a refresh token, before its issuance, or modify an existing refresh token expiration during a [refresh token exchange](/docs/secure/tokens/refresh-tokens/use-refresh-tokens) flow.
5757

5858
The `api.refreshToken.setExpiresAt(absolute)` and the `api.refreshToken.setIdleExpiresAt(idle)` methods will convert non-expiring refresh tokens to expiring refresh tokens using the defaults [Refresh Token expirations](/docs/secure/tokens/refresh-tokens/configure-refresh-token-expiration) settings as maximum values.
5959

6060
The `api.refreshToken.setIdleExpiresAt(idle)` method sets the inactivity timeout for refresh tokens. If the method is not called in every successful exchange, the inactivity timeout will be overwritten using the refresh token lifetime application settings.
61-
6261
</Callout>
6362

6463
## Limitations
@@ -73,8 +72,6 @@ The `api.refreshToken.setIdleExpiresAt(idle)` method sets the inactivity timeout
7372

7473
- Both `api.refreshToken.setExpiresAt()` and `api.refreshToken.setIdleExpiresAt()` can only shorten their respective lifetimes from the current values. They cannot extend or increase the lifetime.
7574

76-
To learn more about refresh tokens limitations, read [Refresh Tokens limitations](/docs/secure/tokens/refresh-tokens).
77-
7875
## Use cases: Revoke a refresh token
7976

8077
You can use [Actions](/docs/customize/actions) to configure risk detections and revoke refresh tokens with the `api.refreshToken.revoke(reason)` method and the event objects.
@@ -97,11 +94,6 @@ exports.onExecutePostLogin = async (event, api) => {
9794
};
9895
```
9996
100-
101-
102-
103-
104-
10597
In this example, a check occurs at the start of the Action to verify that the `event.authentication.ImpossibleTravel.code` is equal to the `impossible_travel_from_last_login property`. If `true`, the Action calls the `api.refreshToken.revoke()` to:
10698
10799
* Deny the transaction
@@ -129,11 +121,6 @@ exports.onExecutePostLogin = async (event, api) => {
129121
};
130122
```
131123
132-
133-
134-
135-
136-
137124
In this example, a check occurs at the start of the Action to keep track of the IP addresses with the `event.refresh_token.device.initial_ip` and the `event.request.ip` properties. The Action determines if the transaction IP address has changed. If `true`, the Action calls the `api.refreshToken.revoke()` to:
138125
139126
* Deny the transaction
@@ -177,11 +164,6 @@ exports.onExecutePostLogin = async (event, api) => {
177164
};
178165
```
179166
180-
181-
182-
183-
184-
185167
In this example, If there is a specific absolute timeout defined for an Organization, the Action sets the refresh token absolute timeout to be equal to:
186168
187169
* Newly issued tokens: `current_time` plus `organization_refresh_token_lifetime`
@@ -211,9 +193,4 @@ exports.onExecutePostLogin = async (event, api) => {
211193
};
212194
```
213195
214-
215-
216-
217-
218-
219196
In this example, if there is a specific idle timeout defined for the Application and the user is an Admin, the Action sets the refresh token inactivity timeout to be equal to the `current_time` plus the `refresh_token_idle_timeout`. Note that we are changing the timeout for both newly issued tokens and existing ones during refresh token exchange.

0 commit comments

Comments
 (0)