我构建了symfony2项目,我有2个用于管理员和一个用于用户的软件包。 我配置了我的security.yml,因此管理员可以登录,但用户不能登录。
我已经关注了这个tutoriel http://symfony.com/fr/doc/current/book/security.html
这是我的security.yml:
安全性:
encoders:
Symfony\Component\Security\Core\User\User:
algorithm: bcrypt
cost: 12
BackOfficeBundle\Entity\Administrateur:
algorithm: bcrypt
BackOfficeBundle\Entity\Collaborateur:
algorithm: bcrypt
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
administrators:
entity: { class: BackOfficeBundle:Administrateur, property: username }
users:
entity: { class: BackOfficeBundle:Collaborateur, property: email }
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
front_login:
pattern: ^/clogin$
anonymous: true
back_login:
pattern: ^/login$
anonymous: true
back:
pattern: ^/
anonymous: false
provider: administrators
form_login:
login_path: login
check_path: login_check
default_target_path: /platform
logout:
path: logout
target: /login
front:
pattern: ^/
anonymous: false
provider: users
form_login:
login_path: clogin
check_path: clogin_check
default_target_path: /collaborateur
logout:
path: clogout
target: /clogin
access_control:
#- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }
- { path: ^/platform, roles: ROLE_ADMIN }
- { path: ^/collaborateur, roles: ROLE_USER }
front_office:
resource: "@FrontOfficeBundle/Resources/config/routing.yml"
prefix: /collaborateur
back_office:
resource: "@BackOfficeBundle/Resources/config/routing.yml"
prefix: /platform
登录:
pattern: /login
defaults: { _controller: UserBundle:Security:login }
login_check:
pattern: /login_check
注销:
pattern: /logout
clogin:
pattern: /clogin
defaults: { _controller: UserBundle:Security:clogin }
clogin_check:
pattern: /login_check
clogout:
pattern: /logout
我的代码应该更改以允许用户登录? 我应该有两个login_check吗?