Как персонализировать пакет Fosuser: файл безопасности, мне нужно написать регулярное выражение
-
11-12-2019 - |
Вопрос
Мне нужно сказать, что мой администратор Fosuser, который я хочу разрешить только пользователям администратора в каждом разделе веб-сайта, который начинается с администратора. По умолчанию в док, дайте, для файла Security.yml, который код:
security:
encoders:
"FOS\UserBundle\Model\UserInterface": sha512
providers:
fos_userbundle:
id: fos_user.user_manager
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
# Firewall pour les pages de connexion, inscription, et récupération de mot de passe
login:
pattern: ^/(login$|register|resetting) # Les adresses de ces pages sont login, register et resetting
anonymous: true # On autorise bien évidemment les anonymes sur ces pages !
# Firewall principal pour le reste de notre site
main:
pattern: ^/ # ^/ = tout ce qui commence par / = tout notre site
form_login: # On définit notre méthode d'authentification
provider: fos_userbundle # On lit l'authentification au provider définit plus haut
remember_me: true # On active la possibilité du "Se souvenir de moi" (désactivé par défaut)
remember_me:
key: %secret% # On définit la clé pour le remember_me (%secret% est un parametre de parameters.ini)
anonymous: true # On autorise les utilisateurs anonymes (non identifiés)
logout: true # On autorise la déconnexion manuelle (désactivé par défaut)
.
Я просто хочу изменить эту строку:
pattern: ^/ # ^/ = tout ce qui commence par / = tout notre site
.
Так что я могу Sey: на всех адресах типа « http://www.mywebsite.com/web/app_dev.php/admin/ '
Как я могу написать это регез?Я попробовал:
pattern: ^/(admin) # ^/ = tout ce qui commence par / = tout notre site
.
Но это не работает ...
Решение
Чтобы позволить пользователям admin на каждой странице, которая начинается с администратора, вам необходимо отредактировать раздел Access_Control вашего файла Security.yml:
access_control:
#List of pages only accessible by administrator
- { path: ^/admin, role: ROLE_ADMIN }
. Не связан с StackOverflow