Skip to content

Commit cebafbf

Browse files
Add consumer group section, add plugin example
Signed-off-by: Diana <[email protected]>
1 parent 06867d6 commit cebafbf

File tree

2 files changed

+49
-0
lines changed

2 files changed

+49
-0
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
title: Consumer Group authorization
2+
description: |
3+
Configure Consumer Group mapping with the OpenID Connect plugin.
4+
5+
extended_description: |
6+
Configure Consumer Group mapping with the OpenID Connect plugin.
7+
8+
This example uses password authentication, but you can use any supported [authentication type](/plugins/openid-connect/reference/#schema--config-auth-methods) with Consumer Groups.
9+
10+
{% include_cached plugins/oidc/client-auth.md %}
11+
12+
weight: 849
13+
14+
requirements:
15+
- A configured identity provider (IdP)
16+
- At least one [Consumer Group](/gateway/entities/consumer-group/) with a name matching the value defined in `config.consumer_group_claim`
17+
min_version: 3.12
18+
config:
19+
issuer: ${issuer}
20+
auth_methods:
21+
- client_credentials
22+
consumer_group_claim:
23+
- tier
24+
25+
variables:
26+
issuer:
27+
value: $ISSUER
28+
description: |
29+
The issuer authentication URL for your IdP.
30+
For example, if you're using Keycloak as your IdP, the issuer URL looks like this: `http://localhost:8080/realms/example-realm`
31+
32+
tools:
33+
- deck
34+
- admin-api
35+
- konnect-api
36+
- kic
37+
- terraform
38+
39+
group: authorization

app/_kong_plugins/openid-connect/index.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,7 @@ The OpenID Connect plugin has several options for performing coarse-grained auth
282282
1. [Claims-based authorization](#claims-based-authorization)
283283
2. [ACL plugin authorization](#acl-plugin-authorization)
284284
3. [Consumer authorization](#consumer-authorization)
285+
4. [Consumer Group authorization](#consumer-group-authorization) {% new_in 3.12 %}
285286

286287
#### Claims-based authorization
287288

@@ -401,6 +402,15 @@ Set up Consumer auth:
401402
* [Plugin configuration example](/plugins/openid-connect/examples/consumer-auth/)
402403
* [Consumer auth tutorial with Keycloak](/how-to/configure-oidc-with-consumers/)
403404

405+
#### Consumer Group authorization {% new_in 3.12 %}
406+
407+
You can use {{site.base_gateway}} [Consumer Groups](/gateway/entities/consumer-group/) for authorization and dynamically map claim values to Consumer Groups.
408+
This means that we restrict the access to only those that do have a matching Consumer Group.
409+
410+
Set up Consumer Group auth:
411+
* [Plugin configuration example](/plugins/openid-connect/examples/consumer-group-auth/)
412+
* [Consumer Group auth tutorial with Keycloak](/how-to/configure-oidc-with-consumers/) ????
413+
404414
### Client authentication
405415

406416
#### Mutual TLS client authentication

0 commit comments

Comments
 (0)