openfinancy / admin-security-component
Shared admin security stack (credentials, authenticator, provider) for OpenFinancy Symfony projects.
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
pkg:composer/openfinancy/admin-security-component
Requires
- php: >=8.4
- doctrine/doctrine-bundle: ^2.13
- doctrine/orm: ^3.0
- symfony/event-dispatcher: ^7.1
- symfony/form: ^7.1
- symfony/http-foundation: ^7.1
- symfony/http-kernel: ^7.1
- symfony/password-hasher: ^7.1
- symfony/routing: ^7.1
- symfony/security-bundle: ^7.1
- symfony/security-http: ^7.1
- symfony/validator: ^7.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.59
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^12.4
This package is auto-updated.
Last update: 2025-11-12 07:00:39 UTC
README
Shared Symfony security stack for OpenFinancy administration portals. The package bundles credential storage, composite credential providers, authenticator, user provider, setup redirect subscriber, and supporting form definitions under the OpenFinancy\Component\AdminSecurity namespace.
Installation
composer require openfinancy/admin-security-component:^0.1
Requirements:
- PHP 8.4+
- Symfony 7.1 components: Security, Form, Validator, Routing, HTTP Foundation/Kernel, Doctrine ORM bundle.
Highlights
AdminCredentialDoctrine entity and repository for storing hashed admin credentials.- Composite credential provider chain (
CompositeAdminCredentialProvider) combining database and default fallback providers. AdminCredentialManagerorchestrating setup, updates, and credential persistence.- Symfony security integration via
AdminAuthenticator,AdminUserProvider, andAdminUser. AdminSetupRedirectSubscriberenforcing setup flows until custom credentials are configured.- Reusable
AdminCredentialTypeform for the setup wizard.
Quick Start
- Register the services in your Symfony app:
# config/services.yaml OpenFinancy\Component\AdminSecurity\Security\AdminUserProvider: tags: ['security.user_provider'] OpenFinancy\Component\AdminSecurity\AdminCredentials\CompositeAdminCredentialProvider: arguments: $providers: - '@OpenFinancy\Component\AdminSecurity\AdminCredentials\DatabaseAdminCredentialProvider' - '@OpenFinancy\Component\AdminSecurity\AdminCredentials\DefaultAdminCredentialProvider'
- Configure security:
security: providers: admin_provider: id: OpenFinancy\Component\AdminSecurity\Security\AdminUserProvider firewalls: admin: pattern: ^/admin provider: admin_provider custom_authenticator: OpenFinancy\Component\AdminSecurity\Security\AdminAuthenticator
- Map the entity:
doctrine: orm: mappings: OpenFinancyAdminSecurity: type: attribute dir: '%kernel.project_dir%/vendor/openfinancy/admin-security-component/src/AdminSecurity/Entity' prefix: 'OpenFinancy\Component\AdminSecurity\Entity'
Development
Run quality tools locally:
composer analyse
composer lint
composer test
Documentation
CHANGELOG.mdenumerates release history.- Tests provide concrete usage examples for the service container.
License
Released under the European Union Public Licence v1.2 (EUPL-1.2). See LICENSE for details.