Closed
Description
Q | A |
---|---|
Bug report? | yes |
Feature request? | no |
BC Break report? | no |
RFC? | no |
Symfony version | 4.0.7 |
bin/console -v
In Definition.php line 262:
[Symfony\Component\DependencyInjection\Exception\OutOfBoundsException]
Service "security.authentication.provider.simple_form.secured_area": The index "3" is not in the range [0, 2].
Exception trace:
Symfony\Component\DependencyInjection\Definition->replaceArgument() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/ResolveChildDefinitionsPass.php:150
Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass->doResolveDefinition() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/ResolveChildDefinitionsPass.php:58
Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass->resolveDefinition() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/ResolveChildDefinitionsPass.php:39
Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass->processValue() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/AbstractRecursivePass.php:60
Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass->processValue() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/ResolveChildDefinitionsPass.php:31
Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass->processValue() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/AbstractRecursivePass.php:39
Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass->process() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/Compiler/Compiler.php:95
Symfony\Component\DependencyInjection\Compiler\Compiler->compile() at /Users/andreybolonin/www/asat/vendor/symfony/dependency-injection/ContainerBuilder.php:713
Symfony\Component\DependencyInjection\ContainerBuilder->compile() at /Users/andreybolonin/www/asat/vendor/symfony/http-kernel/Kernel.php:513
Symfony\Component\HttpKernel\Kernel->initializeContainer() at /Users/andreybolonin/www/asat/vendor/symfony/http-kernel/Kernel.php:125
Symfony\Component\HttpKernel\Kernel->boot() at /Users/andreybolonin/www/asat/vendor/symfony/framework-bundle/Console/Application.php:64
Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /Users/andreybolonin/www/asat/vendor/symfony/console/Application.php:143
Symfony\Component\Console\Application->run() at /Users/andreybolonin/www/asat/bin/console:39
On 4.0.6 works perfectly.
security.yaml
# To get started with security, check out the documentation:
# https://symfony.com/doc/current/security.html
security:
encoders:
App\Entity\User:
algorithm: bcrypt
cost: 13
role_hierarchy:
ROLE_ADMIN: [ROLE_SELLER, ROLE_BUYER, ROLE_BROKER, ROLE_MANAGER, ROLE_ACCOUNTANT]
ROLE_MANAGER: ~
ROLE_ACCOUNTANT: ~
# https://symfony.com/doc/current/security.html#b-configuring-how-users-are-loaded
providers:
our_db_provider:
entity:
class: App\Entity\User
property: email
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
secured_area:
pattern: ^/(admin|cabinet|backoffice)
anonymous: ~
provider: our_db_provider
logout_on_user_change: true
simple_form:
login_path: /admin/login
check_path: /admin/login_check
authenticator: App\Security\PasswordAuthenticator
default_target_path: after_login
require_previous_session: false
logout:
path: /admin/logout
target: /admin/login
access_control:
- { path: ^/admin/login, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin, role: [ROLE_ADMIN, ROLE_MANAGER, ROLE_ACCOUNTANT] }
- { path: ^/cabinet, role: [ROLE_SELLER, ROLE_BUYER, ROLE_BROKER, ROLE_MANAGER, ROLE_ACCOUNTANT] }
- { path: ^/backoffice, role: ROLE_ADMIN }