1

我正在尝试在我正在编写的 Symfony2 应用程序中实现一个两因素身份验证方案。基本上,系统目前工作正常,以 Doctrine ORM Entity 作为用户提供者。但是,我在弄清楚如何正确和最有效地添加它时遇到了问题。

基本上,身份验证应该这样工作。用户看到登录表单。键入用户/密码组合,然后输入 OTP(在本例中为 yubikey。)

标准的 symfony2 身份验证可以很好地处理用户/密码。但是,我想添加添加 OTP 支持的选项(前提是用户有 yubikey 的数据库条目,并且它在站点范围内启用。)

有没有人对这种模式有任何运气?我想避免重新发明轮子,只需要弄清楚如何将其与当前的身份验证模式联系起来。

最初,我曾考虑在我正在使用的自定义密码编码器 (bcrypt) 中使用 isPasswordValid() 函数。但是,似乎没有办法将 otp 传递给该函数。

4

1 回答 1

1

您需要编写一个包含 OTP 相关逻辑的自定义身份验证提供程序(我假设您使用的是基于默认实体的提供程序)。我不会在这里复制和粘贴 Symfony 的示例,但他们的文档中有一个供参考。

于 2013-01-06T20:21:29.070 回答