加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用第三个参数自定义登录

发布时间:2020-12-13 13:20:30 所属栏目:PHP教程 来源:网络整理
导读:我正在为Symfony2开发一个相对简单的登录系统. 我有基础知识,工作得很好. 这有点特别之处在于我需要一种方法来提供第三个值(生态系统价值).我的数据库中的用户名本身并不是唯一的,而是生成具有生态系统价值的唯一对. 生态系统值由他们登录的表单提供. 如何在
我正在为Symfony2开发一个相对简单的登录系统.

我有基础知识,工作得很好.

这有点特别之处在于我需要一种方法来提供第三个值(生态系统价值).我的数据库中的用户名本身并不是唯一的,而是生成具有生态系统价值的唯一对.

生态系统值由他们登录的表单提供.

如何在执行登录时考虑此生态系统价值?

看看 How to load Security Users from the Database (the Entity Provider)的Cookbook教程 – 特别是关于 Authenticating Someone with a Custom Entity Provider的部分.

本部分介绍如何更改/创建UserProviderInterface以允许通过电子邮件地址或用户名登录.显然,这不是你想要的,但是 – 修改代码以对第3个登录参数进行查询/验证应该是相对微不足道的.

理想情况下,您可能会想要创建自己的UserProvider,幸运的是,有一个食谱教程:How to create a custom User Provider.

更新:要处理第3个登录选项并将其传递给您的自定义提供程序(上面创建),您还需要创建自定义身份验证提供程序.请看一下How to create a custom Authentication Provider(另一篇)的食谱文章.本文专门用于处理额外的请求标头参数以进行身份??验证,但是使用此示例,您应该能够为请求POST值换出请求标头.

使用cookbook文章了解Symfony2的身份验证如何工作,但使用(和扩展)Symfony2的用户名/密码功能,只需包含您的第3个参数.一些课程要看:

> UsernamePasswordFormAuthenticationListener
> UsernamePasswordToken
> UserAuthenticationProvider

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读