security.yml 2.17 KB
jms_security_extra:
    secure_all_services: false
    expressions: true

security:
    encoders:
        Cacic\CommonBundle\Entity\Usuario:
            algorithm:        sha1
            encode_as_base64: false
            iterations:       1

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

    providers:
        main:
            entity: { class: Cacic\CommonBundle\Entity\Usuario, property: nmUsuarioAcesso }
        webservice:
            id: webservice_user_provider

    firewalls:
        dev:
            pattern:  ^/(_(profiler|wdt)|css|images|js|assets|assetic)/
            security: false

        ws_neo:
            pattern: ^/ws/neo/getLogin
            stateless: false
            simple_preauth:
                authenticator: apikey_authenticator

        login:
            pattern:  ^/login$
            security: false
        recuperarsenha:
            pattern: ^/usuario/recuperarsenha$
            security: false
        instalador:
            pattern: ^/instalador$
            security: false

        main:
            pattern: .*
            anonymous: ~
            form_login:
                default_target_path:			/
                always_use_default_target_path: true
                login_path: 					/login
                check_path:						/authenticate
            logout:
                path:   /logout
                target: /
            remember_me:
                key:      %secret%
                lifetime: 3600
                path:     /

    access_control:
        - { path: ^/cocar/api, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/ws, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin, roles: ROLE_ADMIN }
        - { path: ^/manutencao, roles: [ ROLE_ADMIN, ROLE_GESTAO ] }
        - { path: ^/, role: [ROLE_USER, ROLE_ADMIN, ROLE_GESTAO, ROLE_SUPERVISAO, ROLE_TECNICO ] }
        - { path: ^/efconnect, role: [ ROLE_USER, ROLE_ADMIN, ROLE_GESTAO, ROLE_SUPERVISAO, ROLE_TECNICO ] }
        - { path: ^/elfinder, role: [ ROLE_USER, ROLE_ADMIN, ROLE_GESTAO, ROLE_SUPERVISAO, ROLE_TECNICO ] }