aboutsummaryrefslogtreecommitdiffhomepage
path: root/app/config/security.yml
blob: 37236d403a92d27e0d489be7db47310fb9966af5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
security:
    encoders:
        Wallabag\CoreBundle\Entity\User:
            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:
        administrators:
            entity: { class: WallabagCoreBundle:User, property: username }

    # the main part of the security, where you can set up firewalls
    # for specific sections of your app
    firewalls:
        wsse_secured:
            pattern:      /api/.*
            wsse:         true
            stateless:    true
            anonymous:    true
        login_firewall:
            pattern:    ^/login$
            anonymous:  ~

        secured_area:
            pattern:    ^/
            anonymous: ~
            form_login:
                login_path:                     /login

                use_forward:                    false

                check_path:                     /login_check

                post_only:                      true

                always_use_default_target_path: true
                default_target_path:            /
                target_path_parameter:          redirect_url
                use_referer:                    true

                failure_path:                   null
                failure_forward:                false

                username_parameter:             _username
                password_parameter:             _password

                csrf_parameter:                 _csrf_token
                intention:                      authenticate

            logout:
                path:   /logout
                target: /

    access_control:
        - { path: ^/api/salt, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/forgot-password, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/, roles: ROLE_USER }