X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=app%2Fconfig%2Fsecurity.yml;h=48fbb553caef9e0fa99a54bcae373fd73affdfd4;hb=3b68f6ca727f52f9dc84fa1a134c092b44c49103;hp=b9c4cbef2d55729ab3139da63756329a71b3b2e6;hpb=9f1d650ae8c98bec73f233f5e9e103747cefa7e3;p=github%2Fwallabag%2Fwallabag.git diff --git a/app/config/security.yml b/app/config/security.yml index b9c4cbef..48fbb553 100644 --- a/app/config/security.yml +++ b/app/config/security.yml @@ -1,70 +1,71 @@ security: encoders: - Wallabag\CoreBundle\Entity\User: - algorithm: sha1 - encode_as_base64: false - iterations: 1 + FOS\UserBundle\Model\UserInterface: sha512 role_hierarchy: - ROLE_ADMIN: ROLE_USER + ROLE_ADMIN: ROLE_USER ROLE_SUPER_ADMIN: [ ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ] + # /!\ This list is modified in WallabagUserBundle when LDAP is enabled providers: administrators: - entity: { class: WallabagCoreBundle:User, property: username } + entity: + class: WallabagUserBundle:User + property: username + fos_userbundle: + id: fos_user.user_provider.username_email # 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 + # disables authentication for assets and the profiler, adapt it according to your needs + dev: + pattern: ^/(_(profiler|wdt)|css|images|js)/ + security: false + + oauth_token: + pattern: ^/oauth/v2/token + security: false + + api: + pattern: /api/.* + fos_oauth: true + stateless: true + anonymous: true + login_firewall: - pattern: ^/login$ + pattern: ^/login$ anonymous: ~ + # /!\ This section is modified in WallabagUserBundle when LDAP is enabled secured_area: - pattern: ^/ - anonymous: ~ + pattern: ^/ form_login: - login_path: /login - - use_forward: false - - check_path: /login_check - - post_only: true - - always_use_default_target_path: false - default_target_path: / - target_path_parameter: _target_path - use_referer: true - - failure_path: null - failure_forward: false - - username_parameter: _username - password_parameter: _password - - csrf_parameter: _csrf_token - intention: authenticate + provider: fos_userbundle + csrf_token_generator: security.csrf.token_manager + anonymous: true remember_me: - key: "%secret%" + secret: "%secret%" lifetime: 31536000 - path: / - domain: ~ + path: / + domain: ~ logout: path: /logout target: / access_control: - - { path: ^/api/salt, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/api/version, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/api/user, 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: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /(unread|starred|archive|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/settings, roles: ROLE_SUPER_ADMIN } + - { path: ^/annotations, roles: ROLE_USER } + - { path: ^/users, roles: ROLE_SUPER_ADMIN } - { path: ^/, roles: ROLE_USER }