Symfony 安全 access_control 语法
Symfony security access_control syntax
我目前有以下代码,它几乎可以满足我的要求。
就是有几点不明白。
每个路径前面的^/是什么?
^/login 后面的 $ 是什么?
为什么我无法访问某个页面时会被重定向到登录页面?我在哪里设置或更改它?
有没有一种简单的方法可以授予对我的首页 (/) 的访问权限,同时要求用户登录才能访问任何其他页面(login/register 页面除外)?
我应该使用 IS_AUTHENTICATED_FULLY 还是 ROLE_USER?
也找不到关于该主题的任何明确信息...
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
- { path: ^/, role: IS_ATHENTICATED_FULLY }
关于 ^ 和 $
^ = 字符串的开头
$ = 字符串结尾
https://en.wikipedia.org/wiki/Regular_expression#Delimiters
IS_AUTHENTICATED_FULLY 或 ROLE_USER:
你不能直接比较这两个。您可以完全通过身份验证,但没有角色用户。
IS_AUTHENTICATED_FULLY仅表示您在本次会话中未通过remember_me机制登录,而是主动输入密码。
但是它不会检查登录用户被授予了哪个角色。
Is there an easy way to grant access to my frontpage (/) while requiring users to be logged in to access any other page (except for the login/register pages)?
尝试:
access_control:
- { path: ^/$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
- { path: ^/*, role: IS_AUTHENTICATED_FULLY }
我目前有以下代码,它几乎可以满足我的要求。 就是有几点不明白。
每个路径前面的^/是什么?
^/login 后面的 $ 是什么?
为什么我无法访问某个页面时会被重定向到登录页面?我在哪里设置或更改它?
有没有一种简单的方法可以授予对我的首页 (/) 的访问权限,同时要求用户登录才能访问任何其他页面(login/register 页面除外)?
我应该使用 IS_AUTHENTICATED_FULLY 还是 ROLE_USER?
也找不到关于该主题的任何明确信息...
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
- { path: ^/, role: IS_ATHENTICATED_FULLY }
关于 ^ 和 $
^ = 字符串的开头 $ = 字符串结尾
https://en.wikipedia.org/wiki/Regular_expression#Delimiters
IS_AUTHENTICATED_FULLY 或 ROLE_USER: 你不能直接比较这两个。您可以完全通过身份验证,但没有角色用户。 IS_AUTHENTICATED_FULLY仅表示您在本次会话中未通过remember_me机制登录,而是主动输入密码。 但是它不会检查登录用户被授予了哪个角色。
Is there an easy way to grant access to my frontpage (/) while requiring users to be logged in to access any other page (except for the login/register pages)?
尝试:
access_control:
- { path: ^/$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
- { path: ^/*, role: IS_AUTHENTICATED_FULLY }