Skip to content

Commit 69344de

Browse files
Merge branch 'use-docusaurus-style-in-oauth2-docs'
2 parents a861962 + 3df0636 commit 69344de

File tree

6 files changed

+99
-61
lines changed

6 files changed

+99
-61
lines changed

docs/oauth2-examples-entra-id/index.md

+17-4
Original file line numberDiff line numberDiff line change
@@ -75,14 +75,18 @@ When using **Entra ID as OAuth 2.0 server**, your client app (in our case Rabbit
7575
Note the value of the `jwks_uri` key (ex: `https://login.microsoftonline.com/{TENANT_ID}/discovery/v2.0/keys`), as you will also need it later to configure the `rabbitmq_auth_backend_oauth2` on RabbitMQ side.
7676

7777
![Entra ID JWKS URI](./entra-id-jwks-uri.png)
78-
8. If the **Endpoints** tab is not visible,
78+
8. If the **Endpoints** tab is not visible,
7979

8080

8181
## Create OAuth 2.0 roles for your app
8282

8383
App roles are defined by using the [Entra ID portal](https://portal.azure.com) during the app registration process. When a user signs in to your application, Entra ID emits a `roles` claim for each role that the user or service principal has been granted (you will have a look at it at the end of this tutorial).
8484

85-
<g-emoji class="g-emoji" alias="blue_book" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4d8.png">📘</g-emoji> More details about roles in Entra ID are available [here](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps).
85+
:::info
86+
87+
To learn more about roles in Entra ID, see [Entra ID documentation](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps)
88+
89+
:::
8690

8791
1. Still in [Entra ID Portal](https://portal.azure.com), go back to **Entra ID** home page.
8892

@@ -94,7 +98,12 @@ App roles are defined by using the [Entra ID portal](https://portal.azure.com) d
9498

9599
2. Then, click on **Create App Role** to create an OAuth 2.0 role that will be used to give access to the RabbitMQ Management UI.
96100

97-
<g-emoji class="g-emoji" alias="blue_book" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4d8.png">📘</g-emoji> More details about how permissions are managed on RabbitMQ when using OAuth 2.0 are available [here](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial#about-permissions).
101+
:::info
102+
103+
To learn more about how permissions are managed when RabbitMQ is used together with OAuth 2.0,
104+
see [this portion of the OAuth 2 tutorial](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial#about-permissions)
105+
106+
:::
98107

99108
3. On the right menu that has just opened, provide the requested information:
100109

@@ -141,7 +150,11 @@ Now that some roles have been created for your application, you still need to as
141150

142151
7. Back to the **Add assignment** pane, below **Select a Role**, click on *None Selected* and, on the **Select a role** pane that has just opened on the right, search and select the role you want to assign to the selected users.
143152

144-
<g-emoji class="g-emoji" alias="bulb" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4a1.png">💡</g-emoji> If only one role is available for your application, it would be automatically selected and greyed by default.
153+
:::tip
154+
155+
If only one role is available for your application, it would be automatically selected and greyed by default.
156+
157+
:::
145158

146159
8. Choose a role (only a single role can be selected at a time), click on the **Select** button, and click on the **Assign** button to finalize the assignment of users and groups to the app.
147160

docs/oauth2-examples-okta.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ contains all the configuration files and scripts used on this example
3838

3939
When using **Okta as OAuth 2.0 server**, your client app (in our case RabbitMQ) needs a way to trust the security tokens issued to it by the **Okta OIDC Sign-In Widget**.
4040

41-
The first step in establishing that trust is by **creating your app** with the identity platform in Okta. More details about App registration in Okta are available [here](https://help.okta.com/en-us/Content/Topics/Apps/Apps_App_Integration_Wizard_OIDC.htm).
41+
The first step in establishing that trust is by **creating your app** with the identity platform in Okta. To learn more about App registration in Okta,
42+
please refer to [Okta documentation](https://help.okta.com/en-us/Content/Topics/Apps/Apps_App_Integration_Wizard_OIDC.htm).
4243

4344
Once you have logged onto your account in [Okta](https://www.okta.com), follow below steps:
4445

docs/oauth2.md

+31-26
Original file line numberDiff line numberDiff line change
@@ -26,32 +26,37 @@ This [RabbitMQ authentication/authorisation backend](./access-control) plugin le
2626

2727
There's also a companion [troubleshooting guide for OAuth 2-specific problems](./troubleshooting-oauth2).
2828

29-
This guide covers
30-
31-
* [How it works](#how-it-works)
32-
* [Prerequisites](#prerequisites)
33-
* [Authorization Flow](#authorization-flow)
34-
* [Variables configurable in rabbitmq.conf](#variables-configurable)
35-
* [Token validation](#token-validation)
36-
* [Token expiration and refresh](#token-expiration)
37-
* [Scope-to-Permission translation](#scope-translation)
38-
* [Topic Exchange scopes](#topic-exchange-scopes)
39-
* [Scope and tags](#scope-and-tags)
40-
41-
* [Basic usage](#basic-usage)
42-
* [Configure OAuth 2.0 provider's issuer](#configure-issuer)
43-
* [Configure signing keys](#configure-signing-keys)
44-
* [Use a different token field for the scope](#use-different-token-field)
45-
* [Preferred username claims](#preferred-username-claims)
46-
* [Rich Authorization Request](#rich-authorization-request)
47-
48-
* [Advanced usage](#advanced-usage)
49-
* [Use default OAuth 2.0 provider](#use-oauth-provider)
50-
* [Configure OAuth 2.0 provider's end_session_endpoint](#configure-end-session-endpoint)
51-
* [Configure multiple resource servers](#multiple-resource-servers)
52-
* [Configure multiple OAuth 2.0 providers](#multiple-oauth-providers)
53-
54-
* [Examples](#examples)
29+
## Table of Contents
30+
31+
### [How it works](#how-it-works)
32+
33+
* [Prerequisites](#prerequisites)
34+
* [Authorization Flow](#authorization-flow)
35+
* [Variables configurable in rabbitmq.conf](#variables-configurable)
36+
* [Token validation](#token-validation)
37+
* [Token expiration and refresh](#token-expiration)
38+
* [Scope-to-Permission translation](#scope-translation)
39+
* [Topic Exchange scopes](#topic-exchange-scopes)
40+
* [Scope and tags](#scope-and-tags)
41+
42+
### [Basic usage](#basic-usage)
43+
44+
* [Configure OAuth 2.0 provider's issuer](#configure-issuer)
45+
* [Configure signing keys](#configure-signing-keys)
46+
* [Use a different token field for the scope](#use-different-token-field)
47+
* [Preferred username claims](#preferred-username-claims)
48+
* [Rich Authorization Request](#rich-authorization-request)
49+
50+
### [Advanced usage](#advanced-usage)
51+
52+
* [Use default OAuth 2.0 provider](#use-oauth-provider)
53+
* [Configure OAuth 2.0 provider's end_session_endpoint](#configure-end-session-endpoint)
54+
* [Configure multiple resource servers](#multiple-resource-servers)
55+
* [Configure multiple OAuth 2.0 providers](#multiple-oauth-providers)
56+
57+
### Examples for Specific Identity Providers
58+
59+
* How to [set up RabbitMQ with OAuth 2: examples](#examples)
5560

5661

5762
## How it works {#how-it-works}

versioned_docs/version-3.13/oauth2-examples-entra-id/index.md

+16-3
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,11 @@ When using **Entra ID as OAuth 2.0 server**, your client app (in our case Rabbit
8282

8383
App roles are defined by using the [Entra ID portal](https://portal.azure.com) during the app registration process. When a user signs in to your application, Entra ID emits a `roles` claim for each role that the user or service principal has been granted (you will have a look at it at the end of this tutorial).
8484

85-
<g-emoji class="g-emoji" alias="blue_book" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4d8.png">📘</g-emoji> More details about roles in Entra ID are available [here](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps).
85+
:::info
86+
87+
To learn more about roles in Entra ID, see [Entra ID documentation](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps)
88+
89+
:::
8690

8791
1. Still in [Entra ID Portal](https://portal.azure.com), go back to **Entra ID** home page.
8892

@@ -94,7 +98,12 @@ App roles are defined by using the [Entra ID portal](https://portal.azure.com) d
9498

9599
2. Then, click on **Create App Role** to create an OAuth 2.0 role that will be used to give access to the RabbitMQ Management UI.
96100

97-
<g-emoji class="g-emoji" alias="blue_book" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4d8.png">📘</g-emoji> More details about how permissions are managed on RabbitMQ when using OAuth 2.0 are available [here](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial#about-permissions).
101+
:::info
102+
103+
To learn more about how permissions are managed when RabbitMQ is used together with OAuth 2.0,
104+
see [this portion of the OAuth 2 tutorial](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial#about-permissions)
105+
106+
:::
98107

99108
3. On the right menu that has just opened, provide the requested information:
100109

@@ -141,7 +150,11 @@ Now that some roles have been created for your application, you still need to as
141150

142151
7. Back to the **Add assignment** pane, below **Select a Role**, click on *None Selected* and, on the **Select a role** pane that has just opened on the right, search and select the role you want to assign to the selected users.
143152

144-
<g-emoji class="g-emoji" alias="bulb" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f4a1.png">💡</g-emoji> If only one role is available for your application, it would be automatically selected and greyed by default.
153+
:::tip
154+
155+
If only one role is available for your application, it would be automatically selected and greyed by default.
156+
157+
:::
145158

146159
8. Choose a role (only a single role can be selected at a time), click on the **Select** button, and click on the **Assign** button to finalize the assignment of users and groups to the app.
147160

versioned_docs/version-3.13/oauth2-examples-okta.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ contains all the configuration files and scripts used on this example
3838

3939
When using **Okta as OAuth 2.0 server**, your client app (in our case RabbitMQ) needs a way to trust the security tokens issued to it by the **Okta OIDC Sign-In Widget**.
4040

41-
The first step in establishing that trust is by **creating your app** with the identity platform in Okta. More details about App registration in Okta are available [here](https://help.okta.com/en-us/Content/Topics/Apps/Apps_App_Integration_Wizard_OIDC.htm).
41+
The first step in establishing that trust is by **creating your app** with the identity platform in Okta. To learn more about App registration in Okta,
42+
please refer to [Okta documentation](https://help.okta.com/en-us/Content/Topics/Apps/Apps_App_Integration_Wizard_OIDC.htm).
4243

4344
Once you have logged onto your account in [Okta](https://www.okta.com), follow below steps:
4445

versioned_docs/version-3.13/oauth2.md

+31-26
Original file line numberDiff line numberDiff line change
@@ -26,32 +26,37 @@ This [RabbitMQ authentication/authorisation backend](./access-control) plugin le
2626

2727
There's also a companion [troubleshooting guide for OAuth 2-specific problems](./troubleshooting-oauth2).
2828

29-
This guide covers
30-
31-
* [How it works](#how-it-works)
32-
* [Prerequisites](#prerequisites)
33-
* [Authorization Flow](#authorization-flow)
34-
* [Variables configurable in rabbitmq.conf](#variables-configurable)
35-
* [Token validation](#token-validation)
36-
* [Token expiration and refresh](#token-expiration)
37-
* [Scope-to-Permission translation](#scope-translation)
38-
* [Topic Exchange scopes](#topic-exchange-scopes)
39-
* [Scope and tags](#scope-and-tags)
40-
41-
* [Basic usage](#basic-usage)
42-
* [Configure OAuth 2.0 provider's issuer](#configure-issuer)
43-
* [Configure signing keys](#configure-signing-keys)
44-
* [Use a different token field for the scope](#use-different-token-field)
45-
* [Preferred username claims](#preferred-username-claims)
46-
* [Rich Authorization Request](#rich-authorization-request)
47-
48-
* [Advanced usage](#advanced-usage)
49-
* [Use default OAuth 2.0 provider](#use-oauth-provider)
50-
* [Configure OAuth 2.0 provider's end_session_endpoint](#configure-end-session-endpoint)
51-
* [Configure multiple resource servers](#multiple-resource-servers)
52-
* [Configure multiple OAuth 2.0 providers](#multiple-oauth-providers)
53-
54-
* [Examples](#examples)
29+
## Table of Contents
30+
31+
### [How it works](#how-it-works)
32+
33+
* [Prerequisites](#prerequisites)
34+
* [Authorization Flow](#authorization-flow)
35+
* [Variables configurable in rabbitmq.conf](#variables-configurable)
36+
* [Token validation](#token-validation)
37+
* [Token expiration and refresh](#token-expiration)
38+
* [Scope-to-Permission translation](#scope-translation)
39+
* [Topic Exchange scopes](#topic-exchange-scopes)
40+
* [Scope and tags](#scope-and-tags)
41+
42+
### [Basic usage](#basic-usage)
43+
44+
* [Configure OAuth 2.0 provider's issuer](#configure-issuer)
45+
* [Configure signing keys](#configure-signing-keys)
46+
* [Use a different token field for the scope](#use-different-token-field)
47+
* [Preferred username claims](#preferred-username-claims)
48+
* [Rich Authorization Request](#rich-authorization-request)
49+
50+
### [Advanced usage](#advanced-usage)
51+
52+
* [Use default OAuth 2.0 provider](#use-oauth-provider)
53+
* [Configure OAuth 2.0 provider's end_session_endpoint](#configure-end-session-endpoint)
54+
* [Configure multiple resource servers](#multiple-resource-servers)
55+
* [Configure multiple OAuth 2.0 providers](#multiple-oauth-providers)
56+
57+
### Examples for Specific Identity Providers
58+
59+
* How to [set up RabbitMQ with OAuth 2: examples](#examples)
5560

5661

5762
## How it works {#how-it-works}

0 commit comments

Comments
 (0)