Files
prestashop/app/config/admin/security.yml
2026-04-09 18:31:51 +02:00

52 lines
1.9 KiB
YAML

# Security rules for Admin Application
# To get started with security, check out the documentation:
# https://symfony.com/doc/current/security.html
security:
enable_authenticator_manager: true
password_hashers:
# auto hasher with custom options for all PasswordAuthenticatedUserInterface instances
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface:
algorithm: 'auto'
cost: 15
Symfony\Component\Security\Core\User\User: plaintext
# https://symfony.com/doc/current/security.html#where-do-users-come-from-user-providers
providers:
in_memory:
memory: ~
admin:
id: prestashop.security.admin.provider
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
lazy: true
provider: admin
form_login:
login_path: admin_login
check_path: admin_login
username_parameter: email
password_parameter: passwd
success_handler: PrestaShopBundle\Security\Admin\AdminAuthenticationSuccessHandler
remember_me:
secret: "%kernel.secret%"
lifetime: "%prestashop.admin_cookie_lifetime%"
remember_me_parameter: stay_logged_in
signature_properties: [ 'password' ]
logout:
path: /logout
target: admin_login
access_control:
- { route: 'admin_login', roles: PUBLIC_ACCESS }
- { route: 'admin_homepage', roles: PUBLIC_ACCESS }
- { route: 'admin_request_password_reset', roles: PUBLIC_ACCESS }
- { route: 'admin_reset_password', roles: PUBLIC_ACCESS }
# Check it the legacy anonymous attribute has been set on the request (set by LegacyRouterChecker)
- { path: ^/, roles: IS_AUTHENTICATED, allow_if: 'request.attributes.has("_anonymous_controller") and request.attributes.get("_anonymous_controller") == true' }