semitexa / platform-user
Semitexa Platform User - the identity store: users, password credentials, roles and tenant binding behind the auth contracts
Package info
github.com/semitexa/platform-user
Type:semitexa-module
pkg:composer/semitexa/platform-user
Requires
- php: ^8.4
- semitexa/auth: *
- semitexa/core: *
- semitexa/orm: *
Requires (Dev)
- phpunit/phpunit: ^10.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-19 18:30:12 UTC
README
semitexa/platform-user
The identity store behind the semitexa/auth contracts: people who sign in, their password credentials, roles and tenant binding, and the lockout that follows repeated failed sign-ins.
Install
Not included by the installer. Add it to an existing project from the project root:
docker compose run --rm --no-deps --user "$(id -u):$(id -g)" app composer require semitexa/platform-user
bin/semitexa server:restart
bin/semitexa orm:sync
semitexa/os already requires it.
What it provides
- The
platform_usertable, thePlatformUserdomain model andPlatformUserRepositoryInterface. PlatformUserProvider, bound toSemitexa\Auth\Domain\Contract\UserProviderInterface, andUserAuthenticator(password check, lockout).- Roles
owner,admin,editor. - Lockout settings:
PLATFORM_USER_MAX_ATTEMPTS(default 5) andPLATFORM_USER_LOCK_SECONDS(default 900). - Console commands:
bin/semitexa user:add --email=… [--tenant=…] [--role=owner|admin|editor] [--name=…](--tenantis required for every role except owner; the password is prompted for when omitted);bin/semitexa user:list [--tenant=…] [--all];bin/semitexa user:password --email=…(also clears a lockout);bin/semitexa user:disable --email=… [--enable].
Documentation
Commands: https://semitexa.com/docs/reference/commands-user
License
MIT, see LICENSE.