我是Symfony2的新手。我阅读了文档,看到了一些登录表单的配置http://symfony.com/doc/current/cookbook/security/form_login_setup.html
# app/config/security.yml
security:
# ...
firewalls:
default:
anonymous: ~
http_basic: ~
form_login:
login_path: /login
check_path: /login_check
我不明白为什么在同一个防火墙中有两个安全方法http_basic和form_login?安全系统将使用哪种方法?http_basic或form_login或两者兼有?它是多余的吗?上面的一些问题看起来很愚蠢,但似乎symfony2安全组件文档太差了。
在旧的Symfony
文档中有一个小提示:
当用户未通过身份验证时,如果存在多个身份验证机制,Symfony2自动定义默认入口点(在上面的例子中,是登录表单;但是如果用户发送带有错误凭据的Authorization HTTP标头,Symfony2将使用HTTP基本入口点)。
但在下一个版本中,当文档被重新组织时,它被减少了,我不知道为什么。
因此,我在GitHub
上的symfony-docs
存储库中打开了一个新问题,并提出了恢复提示的建议。
引用@WouterJ的回答:
代码似乎不再像引用的段落。它似乎总是使用表单登录,除非有没有发送身份验证标头,HTTP基本凭据为对的
所以你是对的——这不是小事。如果你想知道结论,就跟着这个问题来。