我试图弄清楚到底在哪里挂钩到FOSUserBundle登录进程来检查用户是否有“已删除”标志,如果它的真实,终止登录 - 尝试返回错误。FOSUserBundle:尝试在登录前检查“已删除”标志
1
A
回答
4
那么,身份验证是由安全组件处理,而不是由FOS用户包处理。 欲了解更多信息,第一次读到这doc
小结这里
firewalls:
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
logout: true
anonymous: true
当用户重新导向至由防火墙保护的URL的请求, 安全系统被激活。防火墙的工作是 确定是否需要对用户进行身份验证,并确定他是否要将响应发回给启动身份验证过程的用户。
SRC:http://symfony.com/doc/master/book/security.html#how-security-works-authentication-and-authorization
providers:
fos_userbundle:
id: fos_user.user_provider.username
防火墙需要一个提供者(其用户名提供商&密码)。 FOS用户包拥有自己的用户提供商。
你的问题
可以扩展FOS用户捆绑的用户管理和覆盖逻辑来检查多个条件。
您可以在这里看到的样品 https://stackoverflow.com/a/14985093/598424
现在如何检查删除标志
的
AdvancedUserInterface
接口增加了四个额外的方法来验证帐户状态:
- 个
isAccountNonExpired()
检查用户的帐户是否已过期,isAccountNonLocked()
检查用户是否被锁定,isCredentialsNonExpired()
检查用户的凭据(密码)是否已过期,isEnabled()
检查用户是否被启用。
相关问题
- 1. 检查登录尝试
- 2. Facebook登录按钮 - 如何在尝试登录前检查我们是否已登录?
- 3. log4net性能:我应该在尝试登录之前检查日志级别吗?
- 4. ASP.NET登录尝试登录?
- 5. ASP.Net登录控制尝试登录日志VB
- 6. SQL数据库已删除标志并已删除已删除对于
- 7. MappingException尝试从BaseUser在FOSUserBundle
- 8. 如何在尝试从Facebook上删除之前检查帖子是否存在
- 9. 如何解决wordpress登录尝试。我删除了wp-login.php,仍然尝试?
- 10. 检查在执行操作前是否已登录
- 11. 在尝试删除MySQL中的任何记录之前,如何检查记录列表的外键引用?
- 12. Laravel auth在登录之前检查列
- 13. Mysql查询日志 - 已删除表
- 14. Facebook登录尝试登录首次
- 15. 登录尝试的PHP登录脚本
- 16. 已删除记录的当前计数
- 17. 检查用户是否已登录
- 18. 检查用户是否已经登录?
- 19. 检查用户是否已登录
- 20. 在哪里存储登录尝试和当前登录状态,Cookie或会话?
- 21. Android Google登录:请检查用户是否已登录
- 22. Laravel登录尝试消息
- 23. Servlet:登录尝试失败
- 24. 失败登录尝试
- 25. 有限的登录尝试
- 26. 限制登录尝试?
- 27. ASP.Net MVC5登录尝试
- 28. Laravel三州登录尝试
- 29. 如何删除整个网站目录如果登录尝试达到最大
- 30. 在删除记录之前检查规则违规
感谢你为这个提示! 我扩展了usermanager类并编辑了findUserBy方法,它检查它是否被删除,然后清空它使用的$ criteria数组,然后释放它。 然后它返回到标准错误(用户不存在)的登录屏幕。作品。 – Phil 2013-03-22 14:15:06