Symfony如何捕捉检查路径

Symfony如何捕捉检查路径,symfony,authentication,login,Symfony,Authentication,Login,编辑:我已经用symfony设置了登录表单,授权工作正常。但我想更深入地了解一下symfony的安全包是如何管理它的。 我想学习/了解symfony security处理身份验证的方式。如果我对security.yml中指定的URL“/login\u path”非常了解,请在Symfony中的行check\u path触发身份验证: 然后,控制器/侦听器/服务通过变量POST[“\u username”]和登录表单中的POST[“\u password”]获取用户名和密码 我想看看Symfony

编辑:我已经用symfony设置了登录表单,授权工作正常。但我想更深入地了解一下symfony的安全包是如何管理它的。

我想学习/了解symfony security处理身份验证的方式。如果我对security.yml中指定的URL“/login\u path”非常了解,请在Symfony中的行check\u path触发身份验证:

然后,控制器/侦听器/服务通过变量POST[“\u username”]和登录表单中的POST[“\u password”]获取用户名和密码

我想看看Symfony是如何处理的。我应该在Symfony的安全文件夹中查看哪些文件

有人能给我解释一下麦加主义的原理吗? 是否有侦听器捕获URL,然后将其传输到Symfony中的某个控制器。 (我只是想看一看,了解一下)


提前感谢。

没有一个文件可以查看。Symfony中的安全性分为多个方面,如身份验证、授权、用户提供商等

请阅读手册,上面解释得很好。但是是的,这真的很复杂。

基本流程如下所示: -防火墙规则决定是否允许访问以及是否需要身份验证 -令牌由一个配置的侦听器生成 -身份验证提供程序验证令牌
-用户是从已配置的用户提供程序加载的

为什么不安装symfony并使用IDE浏览它?在我看来,安全组件是最复杂的组件。在symfony中,几乎总是有一个非常抽象的底层系统实现和一些具体的实现。你必须选择要分析的层。我已经安装了Symfony,确实需要遍历它。但我想也许有人能告诉我身份验证在Symfony中是如何工作的……if的一般方面。(不是配置方面,我已经用symfony实现了auth,它工作得很好)有身份验证侦听器,它尝试提取任何类型的登录数据。默认情况下,侦听器尝试从请求对象获取
\u用户名
\u密码
,然后使用身份验证管理器生成身份验证令牌。好的,谢谢你的链接。还有一个问题:我只想看看管理侦听器的文件,这些文件在URL中设置check_path时被触发抽象侦听器是
\Symfony\Component\Security\Http\Firewall\AbstractAuthenticationListener
及其受保护的
requireAuthentication()
方法使用
\Symfony\Component\Security\Http\HttpUtils::checkRequestPath
检查
检查路径是否在url中。有两个扩展它的实现:
\Symfony\Component\Security\Http\Firewall\SimpleFormAuthenticationListener
\Symfony\Component\Security\Http\Firewall\UsernamePasswordFormAuthenticationListener
谢谢你的回答,但我实际上用Symfony设置了auth(我知道怎么做,它工作得很好)。我的问题更多的是关于它在后面是如何工作的。。。你能告诉我哪个文件知道生成了check_路径吗(我猜它是一个侦听器,但我不确定)