security.yml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. key: %remember_me.secret%
  21. user_providers: packagist
  22. name: pauth
  23. always_remember_me: true
  24. lifetime: 31104000 # 1y
  25. logout: true
  26. anonymous: true
  27. oauth:
  28. resource_owners:
  29. github: "/login/check-github"
  30. login_path: /login
  31. failure_path: /login
  32. oauth_user_provider:
  33. service: packagist.user_provider
  34. switch_user:
  35. provider: packagist
  36. access_control:
  37. # The WDT has to be allowed to anonymous users to avoid requiring the login with the AJAX request
  38. - { path: ^/_wdt/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  39. - { path: ^/_profiler/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  40. # AsseticBundle paths used when using the controller for assets
  41. - { path: ^/js/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  42. - { path: ^/css/, role: IS_AUTHENTICATED_ANONYMOUSLY }
  43. # URL of FOSUserBundle which need to be available to anonymous users
  44. - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
  45. - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
  46. - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
  47. # Secured part of the site
  48. # This config requires being logged for the whole site and having the admin role for the admin part.
  49. # Change these rules to adapt them to your needs
  50. - { path: ^/packages/submit$, role: ROLE_USER }
  51. - { path: ^/admin/, role: ROLE_ADMIN }
  52. role_hierarchy:
  53. ROLE_UPDATE_PACKAGES: ~
  54. ROLE_DELETE_PACKAGES: ~
  55. ROLE_EDIT_PACKAGES: ~
  56. ROLE_ADMIN: [ ROLE_USER, ROLE_UPDATE_PACKAGES, ROLE_EDIT_PACKAGES, ROLE_DELETE_PACKAGES ]
  57. ROLE_SUPERADMIN: [ ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ]