【发布时间】:2018-01-03 11:39:07
【问题描述】:
我已经在 Twig 中手动实现了一个登录表单,并且我正在使用 Symfony 3.4 提供的默认身份验证(基于用户名和密码)。用户存储在数据库中,因此我有一个扩展 AdvancedUserInterface 的实体。我既没有使用 FOSUserBundle 也没有使用表单生成器。只是一个简单的形式。它确实有效。
问题是我想在登录过程中集成 Google reCAPTCHA。我知道如何检查验证码是否有效并实现了自定义 AuthenticationListener(我们称之为 MyAuthenticationListener)。
我知道 Symfony 使用 UsernamePasswordFormAuthenticationListener 作为它的默认监听器。问题是我找不到将使用的侦听器更改为已实现的方法。
似乎在 Symfony2 中就像在 config.yml 中添加以下行一样简单:
parameters:
security.authentication.listener.form.class:
MyBundle\EventListener\MyAuthenticationListener
但是,我找不到 Symfony3 的方法。有什么建议么? 我还尝试为 Symfony3 找到一个特定的捆绑包,但实际上我找不到任何与 Symfony Security 正确集成的东西,允许我在登录表单中使用验证码。
谢谢
【问题讨论】:
标签: login recaptcha symfony3.x