Repository navigation
Conversation
Map IdP groups directly to settings profiles for users created by the `token` user directory. Mapped profiles are assigned to the user itself after `default_profile`, in config order, so they override profiles carried by roles. The user's profiles are rebuilt on every login, so a profile of a group the user left is removed. The resulting settings are sent to other nodes with distributed queries. `roles_mapping` and `profiles_mapping` share one parser. Related: #1032
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
CI triageVerdict: 2 failing checks, both pre-existing on
1. OAuth regression — pre-existing suite bug (500 vs 403)All OAuth failures ( The query is correctly denied — this is the right, secure behavior. Evidence it is not this PR: the base branch Suggested fix (not in this repo): the fix belongs in the 2. Swarms regression — flaky/infra (pre-existing)Failures are in This suite tests S3 swarm cluster discovery and node-failure resilience. This PR touches only PR health checkThe code change itself ( 🤖 Generated with Claude Code |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e62d0c3eb2
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
CI triage — oauth-profiles PRVerdict: 3 failing checks, none caused by this PR's code. All failures are either in unrelated test areas (Iceberg export, swarm resilience) or are a stale HTTP-status expectation in the external oauth regression suite — the OAuth access-control enforcement your change touches actually behaves correctly in every failing scenario. Head SHA analyzed:
1. Integration tests 5/8 — NOT PR-causedAll 21 failures are in a single unrelated file, This is an Iceberg/Spark + named-collection privilege setup issue and has nothing to do with 2. Regression release oauth — NOT a functional regression (test needs a one-line fix)Two sub-suites fail:
In both cases the query was denied — which is precisely what the tests are verifying (missing profile ⇒ no unrestricted access; matched group role ⇒ no access to That 403 is correct and is not something this PR changed: Fix (in the
Accepting either 403 (and ideally 500 for compat) would make these green again without changing any ClickHouse behavior. 3. Regression release swarms — NOT PR-causedThree scenarios fail — These are distributed
|
Closes #1032
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Added profiles_mapping to the token user directory to map OAuth groups to settings profiles, which take precedence over profiles from roles.
CI/CD Options
Exclude tests:
Regression jobs to run: