| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 | 
							- security:
 
-     # https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords
 
-     password_hashers:
 
-         Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
 
-     # https://symfony.com/doc/current/security.html#loading-the-user-the-user-provider
 
-     providers:
 
-         # used to reload user from session & other features (e.g. switch_user)
 
-         app_user_provider:
 
-             entity:
 
-                 class: App\Entity\User
 
-                 property: email
 
-         # used to reload user from session & other features (e.g. switch_user)
 
-     firewalls:
 
-         dev:
 
-             pattern: ^/(_(profiler|wdt)|css|images|js)/
 
-             security: false
 
-         main:
 
-             lazy: true
 
-             provider: app_user_provider
 
-             form_login:
 
-                 login_path: app_login
 
-                 check_path: app_login
 
-                 enable_csrf: true
 
-             user_checker: App\Security\UserChecker
 
-             remember_me:
 
-                 # https://symfony.com/doc/current/security/remember_me.html
 
-                 secret: '%kernel.secret%'
 
-                 lifetime: 604800 # 7 days in seconds
 
-             logout:
 
-                 path: app_logout
 
-                 # where to redirect after logout
 
-                 # target: app_any_route
 
-             # activate different ways to authenticate
 
-             # https://symfony.com/doc/current/security.html#the-firewall
 
-             # https://symfony.com/doc/current/security/impersonating_user.html
 
-             # switch_user: true
 
-             
 
-             custom_authenticators:
 
-                 - App\Security\KeycloakAuthenticator
 
-     role_hierarchy:
 
-         # USER : utilisateur simple authentifié, suivi des réservations de ses parties, annulations, demandes de parties...
 
-         ROLE_USER: ~
 
-         # STAFF : utilisateur membre du staff, ex. MJ...
 
-         ROLE_STAFF: [ROLE_USER]
 
-         # MANAGER : utilisateur avec des droits étendus, gestion des parties et suivi des inscriptions...
 
-         ROLE_MANAGER: [ROLE_STAFF]
 
-         # ADMIN : utilisateur avec des droits étendus, gestion des parties, des utilisateurs, des gamemasters...
 
-         ROLE_ADMIN: [ROLE_MANAGER]
 
-     # Easy way to control access for large sections of your site
 
-     # Note: Only the *first* access control that matches will be used
 
-     access_control:
 
-         - { path: ^/admin, roles: ROLE_ADMIN }
 
-         - { path: ^/profile, roles: ROLE_USER }
 
-         - { path: ^/manage, roles: ROLE_MANAGER }
 
-         - { path: ^/prepare, roles: ROLE_STAFF }
 
-         - { path: ^/checkin, roles: ROLE_STAFF } 
 
-         - { path: ^/login/keycloak, roles: PUBLIC_ACCESS }
 
- when@test:
 
-     security:
 
-         password_hashers:
 
-             # By default, password hashers are resource intensive and take time. This is
 
-             # important to generate secure password hashes. In tests however, secure hashes
 
-             # are not important, waste resources and increase test times. The following
 
-             # reduces the work factor to the lowest possible values.
 
-             Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface:
 
-                 algorithm: auto
 
-                 cost: 4 # Lowest possible value for bcrypt
 
-                 time_cost: 3 # Lowest possible value for argon
 
-                 memory_cost: 10 # Lowest possible value for argon
 
 
  |