Skip to content

Conversation

@RapidNode777
Copy link

Description

This PR adds a new d8 user-operation command group to deckhouse-cli to perform Dex local user management actions via UserOperation custom resources provided by the user-authn module.

The commands create UserOperation resources 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


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 UserOperation resources.
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:

  • Resetting a user’s password.
  • Forcing a reset of 2FA (TOTP).
  • Locking or unlocking a user account for a specified period of time.

The commands automate resource creation and status tracking, reducing manual intervention and enabling consistent automation.


Checklist

  • The code is covered by unit tests.
  • e2e tests passed.
  • Documentation updated according to the changes.
  • Changes were tested in a Kubernetes cluster manually.

Changelog entries

section: user-authn
type: feature
summary: Introduce `d8 user-operation` commands to execute Dex local user management operations via UserOperation resources
impact_level: default

Signed-off-by: Maxim Bordiyan <maksim.bordiyan@flant.com>
@RapidNode777 RapidNode777 removed the request for review from ldmonster January 19, 2026 03:51
Signed-off-by: Maxim Bordiyan <maksim.bordiyan@flant.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants