Authentication Symfony 3身份验证提供程序回退

Authentication Symfony 3身份验证提供程序回退,authentication,symfony,facebook-authentication,Authentication,Symfony,Facebook Authentication,我使用symfony 3在一些移动应用程序上实现了身份验证机制。到目前为止,该过程要求用户提交电子邮件和密码以进行身份验证。这很有效 今天,我想使用Facebook身份验证授予访问权/创建_帐户 通过移动应用程序,用户可以访问应用程序而不提交任何密码,但FB可能会返回用户的Facebook标识符以及其他一些信息。然后我会将这些数据发布到登录检查路径 此时,我需要一种方法来检查(在请求处理流程的最开始)登录检查POST数据是否是标准用户名/pwd凭据(我猜默认情况下通过daoauthenticat

我使用symfony 3在一些移动应用程序上实现了身份验证机制。到目前为止,该过程要求用户提交电子邮件和密码以进行身份验证。这很有效

今天,我想使用Facebook身份验证授予访问权/创建_帐户

通过移动应用程序,用户可以访问应用程序而不提交任何密码,但FB可能会返回用户的Facebook标识符以及其他一些信息。然后我会将这些数据发布到登录检查路径

此时,我需要一种方法来检查(在请求处理流程的最开始)登录检查POST数据是否是标准用户名/pwd凭据(我猜默认情况下通过daoauthenticationprovider处理?后者反过来将处理传递给JWT以创建身份验证令牌),如果不是,回退到另一个自定义的XXAuthenticationProvider来处理这些数据(例如,如果存在facebook标识符,则使用FB API查找用户帐户,执行任务…然后创建JWT令牌)。

我读了几篇关于Symfony安全组件的文章,但没有一篇文章清楚地解释了整个事情,也没有一篇文章透露了继续进行的方法。我仍然很难弄清楚如何连接到安全防火墙来实现这一点

这是一条路吗?我如何才能做到这一点?

谢谢。

您可以查看handle multiple auth(在sf2.8上添加)@Glasset感谢您的建议,但我们希望遵守现有的代码库,改用“raw”侦听器。我们可能会使用Guard,因为我们将把Symfony Framework升级到最新版本。您可以查看handle multiple auth(添加在sf2.8上)@Glasset感谢您的建议,但我们希望遵守现有的代码库,改用“raw”侦听器。我们可能会使用Guard,因为我们将把Symfony框架升级到最新版本。