Skip to content

feat(identity): Kong Identity + OIDC#5687

Draft
juliamrch wants to merge 21 commits into
release/kong-identity-m0from
iss5048
Draft

feat(identity): Kong Identity + OIDC#5687
juliamrch wants to merge 21 commits into
release/kong-identity-m0from
iss5048

Conversation

@juliamrch

@juliamrch juliamrch commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Description

closes #5048

Preview Links

Plugin config examples:

New shared includes (rendered into the pages above)

  • app/_includes/plugins/oidc/identity-server-intro.md
  • app/_includes/plugins/oidc/idp-requirement.md

To do

Checklist

  • Tested how-to docs. If not, note why here.
  • All pages contain metadata.
  • Any new docs link to existing docs.
  • All autogenerated instructions render correctly (API, decK, Konnect, Kong Manager).
  • Style guide (capitalized gateway entities, placeholder URLs) implemented correctly.
  • Every page has a description entry in frontmatter.
  • Add new pages to the product documentation index (if applicable).

jakubdyszkiewicz and others added 9 commits June 23, 2026 08:23
* feat(event-gw): SASL PLAIN fetch Kong Identity principal

* move directory to prereq and make a bit more generic

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* add how to to index, fix validate wording

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add identity product to how to

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
* feat(event-gw): SASL OAUTH fetch Kong Identity principal

* copilot review

* fix conflict

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add directory prereq, add network container step, some small wording adjustments

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
* Update reference content

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Dev portal variable, caching infos

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* UI step for link consumer, API steps for principal/plugin link, convert yaml to md

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* fix principal requests

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply PM/eng feedback

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Adjust kaa vs ace wording

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Fix section lead in

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from copilot

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fix consumer viewer role thingy

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* First draft of principals reference, it's rough

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* revise

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* fix the failing build

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Fixes from spec, other wording and formatting, add API request examples

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Kong Identity variable

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply PM feedback, new KEG section, new examples section

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* UI steps draft

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* fix broken links

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add note about creating a directory in the UI

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add lookup caching note

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply PM feedback

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Fix the name of the conditional expression

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Connective content to the identity reference

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from copilot

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Change sections to fix tab weirdness

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>
Co-authored-by: Guaris <23319190+Guaris@users.noreply.github.com>
Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Signed-off-by: kong-docs[bot] <team-docs@konghq.com>
@netlify

netlify Bot commented Jun 24, 2026

Copy link
Copy Markdown

Deploy Preview for kongdeveloper ready!

Name Link
🔨 Latest commit ef12275
🔍 Latest deploy log https://app.netlify.com/projects/kongdeveloper/deploys/6a3e64a2ba15dc00083c4bb5
😎 Deploy Preview https://deploy-preview-5687--kongdeveloper.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@CLAassistant

CLAassistant commented Jun 24, 2026

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
3 out of 4 committers have signed the CLA.

✅ cloudjumpercat
✅ Guaris
✅ juliamrch
❌ kong-documentation-app[bot]
You have signed the CLA already but the status is still pending? Let us recheck it.

@juliamrch juliamrch added this to the Kong Identity M0 and M1.1 milestone Jun 24, 2026
@juliamrch juliamrch changed the base branch from main to release/kong-identity-m0 June 24, 2026 10:01
@juliamrch juliamrch changed the title feat(identity): Auntheticate principals with OIDC feat(identity): Authenticate principals with OIDC Jun 24, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the OpenID Connect plugin example configs to enable Principal authentication (via config.principals) and introduces shared includes and a new how-to stub intended to document Principal authentication with OIDC.

Changes:

  • Enable Principals lookup/authentication in multiple OpenID Connect plugin config examples.
  • Add shared include snippets to standardize the “Kong Identity auth server” intro/requirements copy.
  • Add a new how-to page for “Authenticate Principals with the OpenID Connect plugin” (currently frontmatter-only).

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
app/_kong_plugins/openid-connect/examples/user-info-auth.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/session-auth.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/refresh-token.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/password.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/jwt-access-token.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/introspection-auth.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/client-credentials.yaml Adds shared intro/requirement includes and config.principals + directory variable.
app/_kong_plugins/openid-connect/examples/authorization-code.yaml Adds shared intro/requirement includes, config.principals, and an additional embedded {% entity_example %} block in extended_description.
app/_includes/plugins/oidc/idp-requirement.md New include for the “IdP requirement” bullet (link target needs adjustment).
app/_includes/plugins/oidc/identity-server-intro.md New include describing the Kong Identity auth server context for examples.
app/_how-tos/gateway/authenticate-principals-with-oidc.md New how-to page (currently only frontmatter; needs content + validation and frontmatter fixes).
Comments suppressed due to low confidence (1)

app/_how-tos/gateway/authenticate-principals-with-oidc.md:61

  • This how-to currently has frontmatter only and no steps/validation section after the ---; our how-to convention is an end-to-end tutorial that ends with a validation step users can run.
---

Comment thread app/_how-tos/gateway/authenticate-principals-with-oidc.md
Comment thread app/_how-tos/gateway/authenticate-principals-with-oidc.md
Comment thread app/_includes/plugins/oidc/idp-requirement.md Outdated
Comment thread app/_kong_plugins/openid-connect/examples/authorization-code.yaml Outdated
juliamrch and others added 4 commits June 24, 2026 19:07
* feat(identity: basic auth how-to

* Apply suggestion from @juliamrch

* Apply suggestion from @juliamrch

* fix: frontmatter

* Update app/_how-tos/gateway/authenticate-principals-with-basic-authentication.md

* feat(identity): reference in index

* feat(identity): principal example for plugin

* feat(identity): add version

* remove links

Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>

* Update app/_how-tos/gateway/authenticate-principals-with-basic-authentication.md

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
* feat(event-gw): SASL PLAIN fetch Kong Identity principal (#5365)

* feat(event-gw): SASL PLAIN fetch Kong Identity principal

* move directory to prereq and make a bit more generic

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* add how to to index, fix validate wording

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add identity product to how to

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* feat(event-gw): SASL OAUTH fetch Kong Identity principal (#5366)

* feat(event-gw): SASL OAUTH fetch Kong Identity principal

* copilot review

* fix conflict

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Add directory prereq, add network container step, some small wording adjustments

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* feat(portal): Apply plugins to apps (#5663)

* Update reference content

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Dev portal variable, caching infos

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* UI step for link consumer, API steps for principal/plugin link, convert yaml to md

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* fix principal requests

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply PM/eng feedback

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Adjust kaa vs ace wording

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Fix section lead in

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from copilot

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fix consumer viewer role thingy

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* update descriptions (#5665)

* Chore(EGW): V1.1.1 Changelog (#5664)

* egw changelog

* add date

* vale

* vale + last entry

* Fix(Debugger): Update debugger  (#5666)

* Update dbeugger docs

* more changes

* one more edit

* feat(identity): draft auth key guide

* feat(identity): test and validate guide

* feat(identity): add directory name template

* fix(identity): export directory name to decK

* fix(identity): variable export

* chore(deps): update docs from repo source (#5490)

Signed-off-by: kumahq[bot] <110050114+kumahq[bot]@users.noreply.github.com>
Co-authored-by: kumahq[bot] <110050114+kumahq[bot]@users.noreply.github.com>

* typo :(

* fix(identity): remove link

* fetch principal template from iss5037

* feat(identity): replace text with principal include

* update auth-key plugin overview

* Update app/_how-tos/gateway/authenticate-principals-with-key-auth.md

* add version for principals

* feat(identity): add example

* fix: variable names

* add links

Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>

* feat(identity): add key auth guide to index

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Julia <101819212+juliamrch@users.noreply.github.com>

* fix: add tools metadata

* Apply suggestion from @juliamrch

* Apply suggestions from code review

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* Update app/_how-tos/gateway/authenticate-principals-with-key-auth.md

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

---------

Signed-off-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Signed-off-by: kumahq[bot] <110050114+kumahq[bot]@users.noreply.github.com>
Co-authored-by: Jakub Dyszkiewicz <jakub.dyszkiewicz@gmail.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Angel <Guaris@users.noreply.github.com>
Co-authored-by: kumahq[bot] <110050114+kumahq[bot]@users.noreply.github.com>
* feat(identity): include principals + directory

* feat(identity): include identity

* Apply suggestions from code review

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>

* feat(identity): add urls

* fix: format

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

@cloudjumpercat cloudjumpercat left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TL;DR:

  • Apply wording suggestions from the first plugin example to all examples.
  • Double check if we should update the example for Kong OAuth token authentication (currently it wasn't updated)
  • Update the OIDC plugin overview with info about Kong Identity/principals similar to what you did with other plugin overviews
  • Check with Jessup if we'd rather create separate Kong Identity examples instead of overwriting the existing ones.

Longer description:
I've tested all the plugin configs (just checked to see if they ran, didn't run any validations if they could actually authenticate) and I left a few wording suggestions on the first one that would apply to all of them.

I also noticed that all the authentication flow ones were changed to Kong Identity except "Kong OAuth token authentication" wasn't sure if this was intentional or not.

You'll also need to update the OIDC plugin overview with information about Kong Identity/principals (similar to what you did with the other plugins).

Check with Jessup if we'd rather create separate Kong Identity examples instead of overwriting the existing ones.
This one is a can of worms... My recommendation is that we create a new section of plugin examples for Kong Identity, create new plugin example files with the Kong Identity updates you've made and leave the existing examples as-is (ex. create identity-client-credentials.yaml with your updates and leave client-credentials.yaml as it originally was).

Why?

  • If we replace the current examples with Kong Identity, we'll need to change the version to 3.15. This will be confusing if it's the only example since users will wonder if they can't do these configurations in pre-3.15 versions (they can, just not with Kong Identity).
  • We'd also need to remove - admin-api from supported tools since I'm 90% certain we don't have everything in place to use Kong Identity with on-prem.

The dev team wants to replace Keycloak stuff with Kong Identity, but this is a bigger discussion because to do so, we'd be abandoning on-prem users.

Comment thread app/_includes/plugins/oidc/idp-requirement.md Outdated
Comment thread app/_kong_plugins/openid-connect/examples/authorization-code.yaml Outdated
Comment thread app/_kong_plugins/openid-connect/examples/authorization-code.yaml
Comment thread app/_kong_plugins/openid-connect/examples/authorization-code.yaml Outdated
@cloudjumpercat cloudjumpercat force-pushed the release/kong-identity-m0 branch from 33ce795 to 7b2f80b Compare June 24, 2026 20:59
@juliamrch juliamrch changed the title feat(identity): Authenticate principals with OIDC feat(identity): Authenticate a service Kong Identity + OIDC Jun 25, 2026
@juliamrch juliamrch changed the title feat(identity): Authenticate a service Kong Identity + OIDC feat(identity): Kong Identity + OIDC Jun 25, 2026
juliamrch and others added 4 commits June 26, 2026 12:32
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Kong Identity: OIDC support

6 participants