users: change roles, deactivate and reset the password of a local user through the API
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- go
- Domain
- api, authentication
Research direction
Start with the /api/v2/users handlers and the existing user creation and trusted-issuer role update paths; the issue names no source files or tests. Define the PATCH /api/v2/users/{id} behavior for roles, is_active, and password, enforce write:user, audit changes as described in #2228, and protect each tenant’s last active admin. Done includes matching dexaflow auth commands and tests for these cases.
Written by the indexing model from the issue text.
Description
Problem
Found while writing the users, roles and tokens page (#2149). The API can create and list users (POST and GET /api/v2/users, dexaflow auth create-user), and the operator service API sets the roles of a trusted-issuer user, but nothing changes a local (password) user after it exists:
- no call grants or removes a role;
- no call deactivates or reactivates a user, although every authenticator already refuses an inactive one;
- no call changes a password, apart from
dexaflow reset-passwordfor the Lite admin.
An admin who must take access away from a leaving colleague has to edit the database.
Proposal
PATCH /api/v2/users/{id} (or the Airflow FAB-compatible shape if the UI is to use it) taking roles, is_active and password, gated on write:user, each change audited (see #2228), with matching dexaflow auth commands. Deactivating must not be possible for the last active admin of a tenant.
Generated by Claude Code
- Dominant language
- Go
- Stars
- 46
- Forks
- 1
- Avg merge
- 10h 43m
- Merged PRs (30d)
- 587
Getting set up
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from dexadata/dexaflow
-
area/executor enhancement priority/p2
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
area/docs documentation priority/p3
Difficulty 1/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
area/ci enhancement priority/p3
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
All issues in dexadata/dexaflow
Similar issues
-
Cluster details: the Control Plane version field has a different border color than its icon boxOpenkind/design sig/ui
Difficulty 1/5 Under an hour Newbie friendliness 92/100
kubermatic/dashboard#8449 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
filecoin-project/curio#1632 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
-
compose: derived node options overwrite each other's targetsPossibly taken @yangjj-iso claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day