Skip to content

Antalya 26.3: OAuth -- rework Entra ID workflow#1784

Merged
zvonand merged 6 commits into
antalya-26.3from
fix/antalya-26.3/oauth-fix-azure
May 15, 2026
Merged

Antalya 26.3: OAuth -- rework Entra ID workflow#1784
zvonand merged 6 commits into
antalya-26.3from
fix/antalya-26.3/oauth-fix-azure

Conversation

@zvonand
Copy link
Copy Markdown
Collaborator

@zvonand zvonand commented May 12, 2026

Follow-up for #1777

Changelog category (leave one):

  • Backward Incompatible Change

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):

Added a new entra processor type which works with Entra through OIDC flow -- token is validated locally using Entra JWKS. Old azure type will be an alias.
User now needs to specify tenant_id in configuration.

CI/CD Options

Exclude tests:

  • Fast test
  • Integration Tests
  • Stateless tests
  • Stateful tests
  • Performance tests
  • All with ASAN
  • All with TSAN
  • All with MSAN
  • All with UBSAN
  • All with Coverage
  • All with Aarch64
  • All Regression
  • Disable CI Cache

Regression jobs to run:

  • Fast suites (mostly <1h)
  • Aggregate Functions (2h)
  • Alter (1.5h)
  • Benchmark (30m)
  • ClickHouse Keeper (1h)
  • Iceberg (2h)
  • LDAP (1h)
  • Parquet (1.5h)
  • RBAC (1.5h)
  • SSL Server (1h)
  • S3 (2h)
  • S3 Export (2h)
  • Swarms (30m)
  • Tiered Storage (2h)

@zvonand zvonand added port-antalya PRs to be ported to all new Antalya releases antalya-26.3 labels May 12, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 12, 2026

Workflow [PR], commit [b755c73]

zvonand and others added 2 commits May 14, 2026 10:34
Resolved 3 OAuth-side conflicts:

- TokenProcessorsParse.cpp: kept the audit branch's per-endpoint
  require_allowed_url validation in the openid `locally_configured` path;
  adapted the entra preset to the same conventions -- require_allowed_url on
  configuration_endpoint, allow_http_discovery_urls support, LOG_WARNING when
  expected_issuer / expected_audience are empty, remote_host_filter passed
  through to OpenIdTokenProcessor.
- TokenAccessStorage.cpp: collapsed the auth loop into a single
  roles_mapping -> roles_filter -> roles_transform pipeline behind the audit
  branch's defensive `roles_filter->ok()` guard so a broken regex cannot fall
  through to the permissive grant-all branch.
- TokenProcessorsOpaque.cpp: took the audit branch's discovery hardening
  wholesale (URL allow-list, HTTPS-on-discovery-returned-URLs, issuer-anchor
  verification, jwks_uri required when expected_issuer/audience are set).

Rebuilt clean. Verified: test_token_roles_mapping 4/4, test_jwt_auth 6/6,
test_keycloak_auth 8/8.

PR: #1777

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zvonand zvonand changed the title [WiP] Antalya 26.3: fixes for OAuth (Entra) [WiP] Antalya 26.3: OAuth -- rework Entra ID workflow May 14, 2026
@zvonand zvonand marked this pull request as ready for review May 15, 2026 09:59
@zvonand zvonand merged commit 59bfcc0 into antalya-26.3 May 15, 2026
288 of 304 checks passed
@zvonand zvonand added the verified Approved for release label May 15, 2026
@zvonand zvonand changed the title [WiP] Antalya 26.3: OAuth -- rework Entra ID workflow Antalya 26.3: OAuth -- rework Entra ID workflow May 15, 2026
@zvonand zvonand mentioned this pull request May 15, 2026
27 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

antalya-26.3 port-antalya PRs to be ported to all new Antalya releases verified Approved for release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant