KNOX-3355 - Add TrustedOidcIssuerService schema and interface#1311
Merged
Conversation
added 2 commits
July 17, 2026 15:22
Feature context: Support OIDC JWKS discovery to validate tokens from external authorizers. Currently, there is a fixed trusted JWKS list created as part of initial configuration that can be used to validate tokens. Allow the dynamic registration of trusted issuers with a flag that they are trusted for OIDC JWKS discovery. Tokens will be validated with discovered JWKS from such trusted issuers. An initial detailed use case is to validate kubernetes service account tokens from external kubernetes clusters. When the kubernetes cluster is created or integrated, the kubernetes issuer can be registered as trusted for JWKS discovery without knox service disruption. Then, service account tokens from that cluster can be validated using OIDC discovery for JWKS. The implementation plan is bottom up: first the storage and interface for the trusted issuers, then the implementation of registration through an admin API in knox idf, and then the token validation integration. It will be part of knox_idf initially, but written to be portable so that it can be moved into a different or separate service if more OIDC discovery use cases emerge. How this patch was tested: New unit tests are added. Follow on changes will implement the interface and then integrate in the implementation into KnoxIDF flows, but now there are no integration or UI changes.
Add NOT NULL to Derby columns as with the other DBs Moved the cluster_name to the bottom.
smolnar82
approved these changes
Jul 21, 2026
lmccay
approved these changes
Jul 21, 2026
lmccay
left a comment
Contributor
There was a problem hiding this comment.
Lint test failures are unrelated to this change.
+1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
KNOX-3355 - Add TrustedOidcIssuerService schema and interface
Feature context:
Support OIDC JWKS discovery to validate tokens from external authorizers. Currently,
there is a fixed trusted JWKS list created as part of initial configuration that can be used
to validate tokens. Allow the dynamic registration of trusted issuers with a flag that they are
trusted for OIDC JWKS discovery. Tokens will be validated with discovered JWKS from
such trusted issuers.
An initial detailed use case is to validate kubernetes service account tokens from
external kubernetes clusters. When the kubernetes cluster is created or integrated,
the kubernetes issuer can be registered as trusted for JWKS discovery without knox
service disruption. Then, service account tokens from that cluster can be validated
using OIDC discovery for JWKS.
The implementation plan is bottom up: first the storage and interface for the trusted
issuers, then the implementation of registration through an admin API in knox idf, and
then the token validation integration. It will be part of knox_idf initially, but written to
be portable so that it can be moved into a different or separate service if more
OIDC discovery use cases emerge.
How this patch was tested:
New unit tests are added.
Follow on changes will implement the interface and then integrate in the implementation
into KnoxIDF flows, but now there is no integration or UI changes.
Note this was originally posted in #1270 . The knox_idf
branch was altered, so this PR is made on top of the updated branch.
Comments on that pull request are also addressed here:
gateway-site.xml content to doc
primary key column as that will default to enforce NOT NULL, but it's still included for
clarity.
the API caller. Arguably one should not set up permissions so that is possible, but in
general it could happen.