secubox-deb/packages/secubox-users
CyberMind 087929b0a1
feat(users,yacy): sync master admin password to YaCy + durable fixes (ref #776) (#780)
* feat(users,yacy): sync master admin password to YaCy + durable search fix (ref #776)

secubox-users -> YaCy single-admin password sync, plus two durable fixes for
issues surfaced while resetting the admin password:

- yacyctl: 'set-admin-password' subcommand — reads the new password from STDIN
  (never argv), writes the secret file, injects the YaCy Digest hash, restarts
  the daemon (root, exact-match sudoers for the secubox user).
- secubox-users: _sync_yacy_admin_password propagates the master 'admin' user's
  password to YaCy on create/change, guarded by yacy-installed-and-active; only
  the 'admin' user maps to YaCy's single admin account.
- install-lxc.sh: configure_search_access sets adminAccountForLocalhost=false so
  LAN/proxied clients are not pseudo-admin — otherwise the search page appends
  &auth to the yacysearchitem AJAX, which 401s and renders zero results.
- engine._save: preserve users.json owner+mode. A root-run 'usersctl set-password'
  used to recreate it root:root 0600, locking out the secubox auth service (login
  then fell back to auth.toml and rejected every password).
- tests: sync helper (stdin, non-admin skip, unavailable skip, failure) + owner-mode
  preservation.

* fix(users): surface YaCy sync failures loudly + document NNP requirement (ref #776)

Review follow-up: _sync_yacy_admin_password used sudo, which NoNewPrivileges=true
neutralizes — on a hardened standalone secubox-users unit the sync would silently
no-op while the endpoint still reported success. Now it logs a warning with the
sudo stderr on any non-zero/exception and returns False (never silent), and the
docstring documents that elevation only works under the aggregator (NNP=no)
in-process context.

---------

Co-authored-by: CyberMind-FR <gandalf@Gk2.net>
2026-07-03 06:50:39 +02:00
..
api feat(users,yacy): sync master admin password to YaCy + durable fixes (ref #776) (#780) 2026-07-03 06:50:39 +02:00
debian fix(#623): shared /run|/var/lib|/var/cache|/etc/secubox parents stay 1777/0755 in all postinsts 2026-06-18 10:32:58 +02:00
menu.d feat(navbar): consolidate to 6 charter categories + fix dropped menu entries (closes #306) (#307) 2026-05-21 10:03:05 +02:00
nginx secubox-users v1.1.0: Enhanced unified identity management 2026-03-23 07:16:39 +01:00
sbin fix(auth+users): production-discovered bugs from live deploy on gk2 (ref #120) 2026-05-13 10:14:32 +02:00
schema feat(users): users.json v2 JSON Schema + validation tests (ref #120) 2026-05-13 08:37:03 +02:00
share feat(users): password_policy module + common-passwords seed (ref #120) 2026-05-13 08:40:17 +02:00
tests feat(users,yacy): sync master admin password to YaCy + durable fixes (ref #776) (#780) 2026-07-03 06:50:39 +02:00
www/users fix(web): rewrite stale /portal/login.html -> /login.html (closes #222) (#223) 2026-05-19 11:44:43 +02:00
README.md docs(wiki): refonte 126 modules — snapshots WebUI déterministes + READMEs 4 langues (ref #742) 2026-06-26 10:14:14 +02:00

👥 User Management

Unified identity management

Category: Access

Screenshot

User Management

Features

  • User CRUD
  • Groups
  • Service provisioning
  • RBAC

Installation

# Add SecuBox repository
curl -fsSL https://apt.secubox.in/install.sh | sudo bash

# Install package
sudo apt install secubox-users

Configuration

Configuration file: /etc/secubox/users.toml

API Endpoints

  • GET /api/v1/users/status - Module status
  • GET /api/v1/users/health - Health check

License

LicenseRef-CMSD-1.0 (Source-Disclosed License) — CyberMind © 2024-2026. See LICENCE-CMSD-1.0.md.