security.yml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. security:
  2. providers:
  3. oauth:
  4. id: base_oauth_bundle.oauth_user_provider
  5. role_hierarchy:
  6. # RADIUS_PROFILE
  7. ROLE_SONATA_RADIUS_PROFILE_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_RADIUS_PROFILE_LIST, ROLE_SONATA_ADMIN_RADIUS_PROFILE_VIEW]
  8. ROLE_SONATA_RADIUS_PROFILE_EDITOR: [ROLE_SONATA_RADIUS_PROFILE_READER, ROLE_SONATA_ADMIN_RADIUS_PROFILE_CREATE, ROLE_SONATA_ADMIN_RADIUS_PROFILE_EDIT]
  9. ROLE_SONATA_RADIUS_PROFILE_ADMIN: [ROLE_SONATA_RADIUS_PROFILE_EDITOR, ROLE_SONATA_ADMIN_RADIUS_PROFILE_DELETE, ROLE_SONATA_ADMIN_RADIUS_PROFILE_EXPORT]
  10. # ACCESS
  11. ROLE_SONATA_ACCESS_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_ACCESS_LIST, ROLE_SONATA_ADMIN_ACCESS_VIEW]
  12. ROLE_SONATA_ACCESS_EDITOR: [ROLE_SONATA_ACCESS_READER, ROLE_SONATA_ADMIN_ACCESS_CREATE, ROLE_SONATA_ADMIN_ACCESS_EDIT]
  13. ROLE_SONATA_ACCESS_ADMIN: [ROLE_SONATA_ACCESS_EDITOR, ROLE_SONATA_ADMIN_ACCESS_DELETE, ROLE_SONATA_ADMIN_ACCESS_EXPORT]
  14. # NAS_MODEL
  15. ROLE_SONATA_NAS_MODEL_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_NAS_MODEL_LIST, ROLE_SONATA_ADMIN_NAS_MODEL_VIEW]
  16. ROLE_SONATA_NAS_MODEL_EDITOR: [ROLE_SONATA_NAS_MODEL_READER, ROLE_SONATA_ADMIN_NAS_MODEL_CREATE, ROLE_SONATA_ADMIN_NAS_MODEL_EDIT]
  17. ROLE_SONATA_NAS_MODEL_ADMIN: [ROLE_SONATA_NAS_MODEL_EDITOR, ROLE_SONATA_ADMIN_NAS_MODEL_DELETE, ROLE_SONATA_ADMIN_NAS_MODEL_EXPORT]
  18. # NAS
  19. ROLE_SONATA_NAS_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_NAS_LIST, ROLE_SONATA_ADMIN_NAS_VIEW]
  20. ROLE_SONATA_NAS_EDITOR: [ROLE_SONATA_NAS_READER, ROLE_SONATA_ADMIN_NAS_CREATE, ROLE_SONATA_ADMIN_NAS_EDIT]
  21. ROLE_SONATA_NAS_ADMIN: [ROLE_SONATA_NAS_EDITOR, ROLE_SONATA_ADMIN_NAS_DELETE, ROLE_SONATA_ADMIN_NAS_EXPORT]
  22. # WORKFLOW
  23. ROLE_SONATA_WORKFLOW_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_WORKFLOW_LIST, ROLE_SONATA_ADMIN_WORKFLOW_VIEW]
  24. ROLE_SONATA_WORKFLOW_EDITOR: [ROLE_SONATA_WORKFLOW_READER, ROLE_SONATA_ADMIN_WORKFLOW_CREATE, ROLE_SONATA_ADMIN_WORKFLOW_EDIT]
  25. ROLE_SONATA_WORKFLOW_ADMIN: [ROLE_SONATA_WORKFLOW_EDITOR, ROLE_SONATA_ADMIN_WORKFLOW_DELETE, ROLE_SONATA_ADMIN_WORKFLOW_EXPORT]
  26. # ACTION
  27. ROLE_SONATA_ACTION_READER: [ROLE_ADMIN, ROLE_SONATA_ADMIN_ACTION_LIST, ROLE_SONATA_ADMIN_ACTION_VIEW]
  28. ROLE_SONATA_ACTION_EDITOR: [ROLE_SONATA_ACTION_READER, ROLE_SONATA_ADMIN_ACTION_CREATE, ROLE_SONATA_ADMIN_ACTION_EDIT]
  29. ROLE_SONATA_ACTION_ADMIN: [ROLE_SONATA_ACTION_EDITOR, ROLE_SONATA_ADMIN_ACTION_DELETE, ROLE_SONATA_ADMIN_ACTION_EXPORT]
  30. ROLE_ADMIN_TENANCIES: ROLE_ADMIN_TENANCIES
  31. ROLE_ADMIN: [ROLE_USER, ROLE_SONATA_ADMIN]
  32. ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_USER_CREATE, ROLE_ADMIN_TENANCIES, ROLE_ALLOWED_TO_SWITCH]
  33. firewalls:
  34. dev:
  35. pattern: ^/(_(profiler|wdt)|css|images|js)/
  36. security: false
  37. api:
  38. pattern: ^/api
  39. stateless: true
  40. oauth_proxy: true
  41. secured_area:
  42. pattern: ^/
  43. logout:
  44. path: /logout
  45. target: /
  46. success_handler: base_admin.security.logout.handler
  47. anonymous: true
  48. # HWIOAuthBundle + BaseOAuthBundle Configuration
  49. oauth:
  50. login_path: /login
  51. failure_path: /login
  52. check_path: /login
  53. resource_owners:
  54. login: /login_check
  55. oauth_user_provider:
  56. service: base_oauth_bundle.oauth_user_provider
  57. access_control:
  58. - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
  59. - { path: ^/admin/, role: ROLE_ADMIN }
  60. - { path: ^/api/onus/onus/migrate.json, role: IS_AUTHENTICATED_ANONYMOUSLY }
  61. - { path: ^/api/profiles/profiles/migrate.json, role: IS_AUTHENTICATED_ANONYMOUSLY }
  62. - { path: ^/api, role: ROLE_USER }