Skip to content

KAFKA-20101: Support wildcard OAuth bearer URLs - #23052

Open
lh0156 wants to merge 1 commit into
apache:trunkfrom
lh0156:agent/KAFKA-20101-oauth-url-wildcard
Open

KAFKA-20101: Support wildcard OAuth bearer URLs#23052
lh0156 wants to merge 1 commit into
apache:trunkfrom
lh0156:agent/KAFKA-20101-oauth-url-wildcard

Conversation

@lh0156

@lh0156 lh0156 commented Aug 3, 2026

Copy link
Copy Markdown

What

Support org.apache.kafka.sasl.oauthbearer.allowed.urls=* as an explicit opt-in for allowing any OAuth bearer token or JWKS endpoint URL.

The wildcard is scoped to the URL allow-list. The separate file allow-list remains exact-match only, so this change does not broaden org.apache.kafka.sasl.oauthbearer.allowed.files.

The system-properties documentation now explains the wildcard and its security implications.

Tests

  • TDD RED: testUrlWithWildcardAllowList failed before the implementation.
  • TDD GREEN: testUrlWithWildcardAllowList and testFileAllowListDoesNotSupportWildcard passed after the implementation.
  • ./gradlew :clients:test --tests org.apache.kafka.common.security.oauthbearer.internals.secured.ConfigurationUtilsTest --no-build-cache --console=plain
  • ./gradlew :clients:test --no-build-cache --console=plain
  • ./gradlew :clients:checkstyleMain :clients:checkstyleTest :clients:spotbugsMain spotlessCheck --no-build-cache --console=plain
  • git diff --check

Closes KAFKA-20101

Allow the OAuth bearer URL allow-list to use * as an explicit opt-in for any URL. Keep wildcard semantics scoped to URLs so the file allow-list remains exact-match only, and document the security implication.

Generated-by: OpenAI Codex (GPT-5)

Signed-off-by: Yunseop Eom <62834176+lh0156@users.noreply.github.com>
@github-actions github-actions Bot added triage PRs from the community clients small Small PRs labels Aug 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clients small Small PRs triage PRs from the community

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant