feat: add user-operation commands (ResetPassword/Reset2FA/Lock/Unlock)#265
Open
RapidNode777 wants to merge 4 commits intomainfrom
Open
feat: add user-operation commands (ResetPassword/Reset2FA/Lock/Unlock)#265RapidNode777 wants to merge 4 commits intomainfrom
RapidNode777 wants to merge 4 commits intomainfrom
Conversation
Signed-off-by: Maxim Bordiyan <maksim.bordiyan@flant.com>
Signed-off-by: Maxim Bordiyan <maksim.bordiyan@flant.com>
AlwxSin
previously approved these changes
Feb 11, 2026
Signed-off-by: Maxim Bordiyan <maksim.bordiyan@flant.com>
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.
Description
This PR adds a new
d8 usercommand group to deckhouse-cli to perform Dex local user management actions viaUserOperationcustom resources provided by the user-authn module.The commands create
UserOperationresources and optionally wait until the operation is completed, returning success or an error based on the resource status.Related main implementation PR in Deckhouse:
deckhouse/deckhouse#15561
What’s included
New commands
d8 user reset2fa <username>Requests a 2FA reset for the specified local Dex user
(removes 2FA-related session artifacts).
d8 user reset-password <username> <bcryptHash>Resets the user password to the provided bcrypt hash
(as required by the
UserOperationAPI).d8 user lock <username> <lockDuration>Locks the user for the specified duration.
Examples:
10m1h10hd8 user unlock <username>Unlocks the user.
Common flags / behavior
--wait(default:true)Wait for
.status.phaseto becomeSucceededorFailed.--timeout(default:5m)How long to wait when
--wait=true.-k,--kubeconfig,--contextStandard kubeconfig selection flags.
Why do we need it, and what problem does it solve?
Cluster administrators often need to manage local Dex users (reset password, reset 2FA, lock/unlock accounts) without manually editing Dex storage or crafting Kubernetes YAML by hand.
With the main Deckhouse implementation, these actions are handled declaratively via
UserOperationresources.This PR provides a convenient CLI interface to create such resources and track their execution, making user management faster, safer, and less error-prone.
It simplifies operations such as:
The commands automate resource creation and status tracking, reducing manual intervention and enabling consistent automation.
Checklist
Changelog entries
Tests