我正在为Symfony2开发一个相对简单的登录系统.
我有基础知识,工作得很好.
这有点特别之处在于我需要一种方法来提供第三个值(生态系统价值).我的数据库中的用户名本身并不是唯一的,而是生成具有生态系统价值的唯一对.
生态系统值由他们登录的表单提供.
如何在执行登录时考虑此生态系统价值?
请查看有关如何从数据库(实体提供程序)加载安全用户的Cookbook教程- 特别是关于使用自定义实体提供程序对某人进行身份验证的部分.
本部分介绍如何更改/创建UserProviderInterface允许通过电子邮件地址或用户名登录.显然,这不是你想要的,但是 - 修改代码以对第3个登录参数进行查询/验证应该是相对简单的.
理想情况下,您可能会想要创建自己的UserProvider,幸运的是,有一个烹饪手册教程:如何创建自定义用户提供程序.
更新:要处理第3个登录选项并将其传递给自定义提供程序(上面创建),您还需要创建自定义身份验证提供程序.请参阅(另一篇)有关如何创建自定义身份验证提供程序的食谱文章.本文专门用于处理用于身份验证的额外请求标头参数,但是使用此示例,您应该能够为请求POST值交换请求标头.
使用cookbook文章了解Symfony2的身份验证如何工作,但使用(和扩展)Symfony2的用户名/密码功能,只需包含您的第3个参数.有些课要看:
| 归档时间: |
|
| 查看次数: |
3859 次 |
| 最近记录: |