You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/oauth2-examples-auth0.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,7 +32,7 @@ and Auth0 as Authorization Server using the following flows:
32
32
33
33
* Have an [Auth0](https://auth0.com/) account
34
34
* Docker
35
-
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial)that contains all the configuration files and scripts used on this example
35
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next`that contains all the configuration files and scripts used on this example.
36
36
37
37
## Create RabbitMQ API
38
38
@@ -115,7 +115,7 @@ called `audience` whose value matches the value of `auth_oauth2.resource_server_
115
115
Earlier RabbitMQ versions always sent this URI parameter. If this additional URI parameter is not configured,
116
116
Auth0 will consider the token invalid and RabbitMQ will display "No authorized" for error.
117
117
118
-
These [two configuration lines](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/auth0/rabbitmq.conf.tmpl#L8-L9)
118
+
These [two configuration lines](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/auth0/rabbitmq.conf.tmpl#L8-L9)
119
119
configure the `audience` parameter with the value `rabbitmq`.
Copy file name to clipboardExpand all lines: docs/oauth2-examples-entra-id/index.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,7 +32,7 @@ and Microsoft Entra ID as Authorization Server using the following flows:
32
32
* Have an account in https://portal.azure.com.
33
33
* Docker
34
34
* Openssl
35
-
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial)that contains all the configuration files and scripts used on this example
35
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next`that contains all the configuration files and scripts used on this example.
36
36
37
37
## Register your app
38
38
@@ -183,7 +183,7 @@ For more information, check out Microsoft Entra documentation about [configuring
183
183
184
184
The configuration on **Entra ID** side is done. Next, configure RabbitMQ to use these resources.
185
185
186
-
Clone [rabbitmq.conf.tmpl](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/entra/rabbitmq.conf.tmpl) from the tutorial repository
186
+
Clone [rabbitmq.conf.tmpl](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/entra/rabbitmq.conf.tmpl) from the tutorial repository
187
187
to `rabbitmq.conf`. It must be in the same directory as `rabbitmq.conf.tmpl`.
188
188
189
189
Edit the new `rabbitmq.conf` file and proceed as follows:
Copy file name to clipboardExpand all lines: docs/oauth2-examples-google.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,7 +27,7 @@ The main reason is because it does not issue JWT access tokens
27
27
but opaque access tokens. To support opaque access tokens, RabbitMQ would have to issue an
28
28
external HTTP request to convert the opaque access token into a JWT access token.
29
29
30
-
Under the [`/conf/google`](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/google) folder you can find the configuration used to connect the
30
+
Under the [`/conf/google`](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/google) folder you can find the configuration used to connect the
31
31
RabbitMQ management UI with Google OAuth 2.0 endpoints. With this configuration,
32
32
you can get to a point where the user is authenticated by Google, and eventually
33
33
you get the error message in the RabbitMQ Management UI "Not Authorized".
Copy file name to clipboardExpand all lines: docs/oauth2-examples-keycloak.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,7 +32,7 @@ and Keycloak as Authorization Server using the following flows:
32
32
33
33
* Docker
34
34
* make
35
-
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial) that contains all the configuration files and scripts used on this example
35
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next` that contains all the configuration files and scripts used on this example
36
36
37
37
## Deploy Keycloak
38
38
@@ -54,7 +54,7 @@ management api and `producer` to access via AMQP protocol.
54
54
55
55
## Start RabbitMQ
56
56
57
-
Run the command below to start RabbitMQ configured with the **Keycloak** server we started in the previous section: This is the [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/keycloak/rabbitmq.conf) used for**Keycloak**.
57
+
Run the command below to start RabbitMQ configured with the **Keycloak** server we started in the previous section: This is the [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/keycloak/rabbitmq.conf) used for**Keycloak**.
58
58
```bash
59
59
export MODE=keycloak
60
60
make start-rabbitmq
@@ -84,7 +84,7 @@ make start-perftest-producer-with-token PRODUCER=producer TOKEN=$(bin/keycloak/t
84
84
85
85
In the following information, OAuth 2.0 authentication is tested with the AMQP protocol and the Pika library. These tests specifically demonstrate how to refresh a token on a live AMQP connection.
86
86
87
-
The sample Python application [can be found on GitHub](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/pika-client).
87
+
The sample Python application [can be found on GitHub](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/pika-client).
Copy file name to clipboardExpand all lines: docs/oauth2-examples-multiresource.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,7 +30,7 @@ and several OAuth resources using the following flows:
30
30
## Prerequisites
31
31
32
32
* Docker
33
-
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial) that contains all the configuration files and scripts used on this example
33
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next` that contains all the configuration files and scripts used on this example
34
34
35
35
## Single OAuth 2.0 vs Multiple OAuth 2.0 resources
36
36
@@ -52,7 +52,7 @@ As both teams are registered in the same OAuth2 server you are going to configur
52
52
53
53
### Test applications accessing AMQP protocol with their own audience
54
54
55
-
This is a summary of the configuration, found in [rabbitmq.scenario1.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/multi-keycloak/rabbitmq.scenario1.conf):
55
+
This is a summary of the configuration, found in [rabbitmq.scenario1.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/multi-keycloak/rabbitmq.scenario1.conf):
56
56
57
57
There are two OAuth2 clients (`prod_producer` and `dev_producer`) declared in Keycloak and configured to access their respective audience: `rabbit_prod` and `rabbit_dev`.
58
58
The RabbitMQ OAuth 2 plugin is configured like so:
@@ -91,7 +91,7 @@ Follow these steps to deploy Keycloak and RabbitMQ:
91
91
It is recommended to follow the logs until keycloak is fully initialized: `docker logs keycloak -f`
92
92
:::
93
93
94
-
2. Launch RabbitMQ with [rabbitmq.scenario1.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/multi-keycloak/rabbitmq.scenario1.conf):
94
+
2. Launch RabbitMQ with [rabbitmq.scenario1.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/multi-keycloak/rabbitmq.scenario1.conf):
95
95
96
96
```bash
97
97
MODE="multi-keycloak" CONF="rabbitmq.scenario1.conf" make start-rabbitmq
@@ -198,7 +198,7 @@ This scenario uses the same OAuth 2.0 provider called **keycloak**, however, thi
198
198
- `prod_producer` with the audience `rabbit_prod` (password: `PdLHb1w8RH1oD5bpppgy8OF9G6QeRpL9`).
Despite there is only one physical OAuth provider, you need to configure RabbitMQ with two OAuth 2.0 providers. Each tenant has its own `issuer` url. This is the configuration file used for this scenario is [rabbitmq.scenario2.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/multi-keycloak/rabbitmq.scenario2.conf). For convenience here is the relevant part:
201
+
Despite there is only one physical OAuth provider, you need to configure RabbitMQ with two OAuth 2.0 providers. Each tenant has its own `issuer` url. This is the configuration file used for this scenario is [rabbitmq.scenario2.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/multi-keycloak/rabbitmq.scenario2.conf). For convenience here is the relevant part:
202
202
```ini
203
203
...
204
204
## Oauth providers
@@ -296,7 +296,7 @@ This scenario uses two separate OAuth 2.0 providers called `devkeycloak` and `pr
296
296
- `prod_producer` with the audience `rabbit_prod` (password: `PdLHb1w8RH1oD5bpppgy8OF9G6QeRpL9`).
Check out the section `oauth_providers` in the configuration file [rabbitmq.scenario3.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/main/conf/multi-keycloak/rabbitmq.scenario3.conf) used by this scenario. Like in the scenario 2, there are two OAuth providers however this time the URL refers to two different hostnames. For convenience here is the relevant part:
299
+
Check out the section `oauth_providers` in the configuration file [rabbitmq.scenario3.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/blob/next/conf/multi-keycloak/rabbitmq.scenario3.conf) used by this scenario. Like in the scenario 2, there are two OAuth providers however this time the URL refers to two different hostnames. For convenience here is the relevant part:
Copy file name to clipboardExpand all lines: docs/oauth2-examples-okta.md
+3-4Lines changed: 3 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,8 +30,7 @@ and Okta as Authorization Server using the following flows:
30
30
31
31
* Have an [Okta account](https://www.okta.com)
32
32
* Docker
33
-
*`git clone https://github.com/rabbitmq/rabbitmq-oauth2-tutorial`. This github repository
34
-
contains all the configuration files and scripts used on this example
33
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next` that contains all the configuration files and scripts used on this example.
35
34
36
35
37
36
## Create your app integration in Okta UI
@@ -195,10 +194,10 @@ For that, you will need the following values from the previous steps:
195
194
***okta-Issuer**: the **default Authorization server**
196
195
***okta-Metadata-URI**: the **default Authorization server**
197
196
198
-
Copy [rabbitmq.conf.tmpl](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/okta/rabbitmq.conf.tmpl) from the tutorial repository
197
+
Copy [rabbitmq.conf.tmpl](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/okta/rabbitmq.conf.tmpl) from the tutorial repository
199
198
to `rabbitmq.conf`. It must be in the same directory as `rabbitmq.conf.tmpl`.
200
199
201
-
There is a second configuration file, [advanced.config](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/okta/advanced.config),
200
+
There is a second configuration file, [advanced.config](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/okta/advanced.config),
202
201
that will not need any modifications. This is the RabbitMQ [advanced configuration file](./configure/) where RabbitMQ scopes are mapped to the permissions previously configured in Okta.
Copy file name to clipboardExpand all lines: docs/oauth2-examples-proxy.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,7 +43,7 @@ Let's test the following flow:
43
43
44
44
* Docker
45
45
* make
46
-
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial)that contains all the configuration files and scripts used on this example
46
+
* A local clone of a [GitHub repository](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next) for branch `next`that contains all the configuration files and scripts used on this example.
47
47
48
48
## Deploy Keycloak
49
49
@@ -52,7 +52,7 @@ Deploy Keycloak by running the following command:
52
52
make start-keycloak
53
53
```
54
54
55
-
Note: Keycloak is preconfigured with the required scopes, users, and clients. It is configured with its own signing key and the [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/oauth2-proxy/rabbitmq.conf) file is also configured with the same signing key.
55
+
Note: Keycloak is preconfigured with the required scopes, users, and clients. It is configured with its own signing key and the [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/oauth2-proxy/rabbitmq.conf) file is also configured with the same signing key.
56
56
57
57
To access Keycloak Management UI, go to http://0.0.0.0:8080/ and enter `admin` as username and password.
58
58
@@ -65,7 +65,7 @@ There is a dedicated **Keycloak realm** called `Test` configured as follows:
65
65
## Start RabbitMQ
66
66
67
67
To start RabbitMQ run the following two commands. The first one tells RabbitMQ to pick up the
68
-
rabbitmq.conf found under [conf/oauth2-proxy/rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/oauth2-proxy/rabbitmq.conf)
68
+
rabbitmq.conf found under [conf/oauth2-proxy/rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/oauth2-proxy/rabbitmq.conf)
69
69
70
70
```
71
71
export MODE=oauth2-proxy
@@ -74,7 +74,7 @@ make start-rabbitmq
74
74
75
75
**NOTE**: Oauth2 Proxy requires that the `aud` claim matches the client's id. However, RabbitMQ requires the
76
76
`aud` field to match `rabbitmq` which is the designated `resource_server_id`. Given that it has been
77
-
impossible to configure keycloak with both values, [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/oauth2-proxy/rabbitmq.conf) has
77
+
impossible to configure keycloak with both values, [rabbitmq.conf](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/oauth2-proxy/rabbitmq.conf) has
78
78
the setting below which disables validation of the audience claim.
79
79
80
80
```ini
@@ -90,7 +90,7 @@ To start OAuth2 Proxy, run the following command:
90
90
make start-oauth2-proxy
91
91
```
92
92
93
-
Oauth2 Proxy is configured using [Alpha configuration](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/main/conf/oauth2-proxy/alpha-config.yaml). This type of configuration inserts the access token into the HTTP **Authorization** header.
93
+
Oauth2 Proxy is configured using [Alpha configuration](https://github.com/rabbitmq/rabbitmq-oauth2-tutorial/tree/next/conf/oauth2-proxy/alpha-config.yaml). This type of configuration inserts the access token into the HTTP **Authorization** header.
0 commit comments