X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=app%2Fconfig%2Fsecurity.yml;h=760b2550320868d185be60972455147cf6257bd4;hb=531c8d0a5c55fa93438e227a7d349235fbd31d28;hp=ffb1d356fd29d8b081a78a088c47afc04176ba49;hpb=6ed2627bb35561e32d702fbe67247349dd67453e;p=github%2Fwallabag%2Fwallabag.git diff --git a/app/config/security.yml b/app/config/security.yml index ffb1d356..760b2550 100644 --- a/app/config/security.yml +++ b/app/config/security.yml @@ -12,7 +12,7 @@ security: class: WallabagUserBundle:User property: username fos_userbundle: - id: fos_user.user_provider.username + 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 @@ -31,12 +31,15 @@ security: fos_oauth: true stateless: true anonymous: true + provider: fos_userbundle login_firewall: + logout_on_user_change: true pattern: ^/login$ anonymous: ~ secured_area: + logout_on_user_change: true pattern: ^/ form_login: provider: fos_userbundle @@ -53,16 +56,27 @@ security: path: /logout target: / + two_factor: + provider: fos_userbundle + auth_form_path: 2fa_login + check_path: 2fa_login_check + access_control: - - { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: ^/api/version, roles: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: ^/api/user, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/api/(doc|version|info|user), roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } + # force role for logout otherwise when 2fa enable, you won't be able to logout + # https://github.com/scheb/two-factor-bundle/issues/168#issuecomment-430822478 + - { path: ^/logout, roles: [IS_AUTHENTICATED_ANONYMOUSLY, IS_AUTHENTICATED_2FA_IN_PROGRESS] } - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /(unread|starred|archive|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/locale, role: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/feed, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # For backwards compatibility - { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/settings, roles: ROLE_SUPER_ADMIN } - { path: ^/annotations, roles: ROLE_USER } + - { path: ^/2fa, role: IS_AUTHENTICATED_2FA_IN_PROGRESS } - { path: ^/users, roles: ROLE_SUPER_ADMIN } - { path: ^/, roles: ROLE_USER }