security.yml 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. security:
  2. encoders:
  3. FOS\UserBundle\Model\UserInterface:
  4. algorithm: sha512
  5. encode_as_base64: false
  6. iterations: 1
  7. providers:
  8. packagist:
  9. id: packagist.user_provider
  10. firewalls:
  11. main:
  12. pattern: .*
  13. form_login:
  14. provider: packagist
  15. login_path: /login
  16. use_forward: false
  17. check_path: /login_check
  18. failure_path: null
  19. remember_me:
  20. secret: '%remember_me.secret%'
  21. user_providers: packagist
  22. name: pauth
  23. always_remember_me: true
  24. lifetime: 31104000 # 1y
  25. logout_on_user_change: true
  26. logout: true
  27. anonymous: true
  28. oauth:
  29. resource_owners:
  30. github: '/login/check-github'
  31. login_path: /login
  32. failure_path: /login
  33. oauth_user_provider:
  34. service: packagist.user_provider
  35. switch_user:
  36. provider: packagist
  37. access_control:
  38. # The WDT has to be allowed to anonymous users to avoid requiring the login with the AJAX request
  39. - { path: ^/_wdt/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  40. - { path: ^/_profiler/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  41. # AsseticBundle paths used when using the controller for assets
  42. - { path: ^/js/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  43. - { path: ^/css/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  44. # URL of FOSUserBundle which need to be available to anonymous users
  45. - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
  46. - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
  47. - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
  48. # Secured part of the site
  49. # This config requires being logged for the whole site and having the admin role for the admin part.
  50. # Change these rules to adapt them to your needs
  51. - { path: ^/packages/submit$, role: ROLE_USER }
  52. - { path: ^/admin/, role: ROLE_ADMIN }
  53. role_hierarchy:
  54. ROLE_UPDATE_PACKAGES: ~
  55. ROLE_DELETE_PACKAGES: ~
  56. ROLE_EDIT_PACKAGES: ~
  57. ROLE_ANTISPAM: ~
  58. ROLE_SPAMMER: ~
  59. ROLE_ADMIN: [ ROLE_USER, ROLE_UPDATE_PACKAGES, ROLE_EDIT_PACKAGES, ROLE_DELETE_PACKAGES, ROLE_ANTISPAM ]
  60. ROLE_SUPERADMIN: [ ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ]