[英]Symfony 3 Form Login
我已经尝试了几天了,但是仍然无法完成这项工作。我已经翻阅了文档页面,我快要疯了,而且我不明白哪里出了问题。
对我来说,了解和学习Symfony的工作方式非常重要,因为我的新工作需要我与之合作。
因此,我转到了文档页面: http : //symfony.com/doc/current/cookbook/security/entity_provider.html#security-config-entity-provider
安全性
encoders:
Paul\FrontBundle\Entity\User:
algorithm: bcrypt
# http://symfony.com/doc/current/book/security.html#where-do-users-come-from-user-providers
providers:
db_users:
entity:
class: Paul\FrontBundle\Entity\User
property: username
firewalls:
admin:
pattern: ^/admin
provider: db_users
form_login:
check_path: admin_login_check
login_path: admin_login
# disables authentication for assets and the profiler, adapt it according to your needs
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
anonymous: ~
我的用户实体实现了UserInterface,这是什么问题? 谁能解释我在做什么错?
谢谢 !
好的,所以问题出在安全上下文上 ,对于有兴趣的人, 此链接将详细说明。
现在我要做的是以下内容:
在security.yml
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
protected_area:
pattern: ^/protected
anonymous: ~
form_login:
login_path: login
check_path: login
default_target_path: /protected
provider: database_users
logout:
path: logout
target: /
success_handler: ~
invalidate_session: true
main:
anonymous: ~
access_control:
- { path: ^/protected/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/protected, roles: ROLE_USER }
在routing.yml
login:
path: /protected/login
defaults: { _controller: PaulDemoBundle:Security:login }
login_check:
path: /login_check
logout:
path: /protected/logout
因此,要进一步说明,登录表单现在位于/login
之前, /protected/login
之后的protected_area
防火墙的上下文中。
也要注意
access_control
节点。
我希望这会帮助其他人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.