symfony 2:通过防火墙获取非安全页面上当前登录的用户

2023-12-29

如何获取非安全页面上当前登录的用户?

我只有一个通过防火墙保护的 /account/ 页面,其他页面不受保护。

我的全局导航具有以下模板(简化):

{% if app.user %}
  <a href="/account/data">...
  <a href="/logout>...
{% else %}
  <a href="/account/login">....
{% endif %}

问题:带有注销链接的导航也应该可以在不安全的页面上访问,但是没有 UsernamePasswordToken...并且 symfony 显示登录链接,而不是 /logout 和 /account/data 链接。我使用匿名侦听器配置了所有其他页面,但它无法正常工作。

有解决办法吗?


您无法让用户访问非防火墙页面。为整个应用程序启用防火墙,允许匿名访问,并通过以下方式保护应用程序的特定部分access_control:

security:
    firewalls:
        main:
            pattern: ^/
            anonymous: ~

    access_control:
        - { path: ^/protected, roles: ROLE_SOME }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

symfony 2:通过防火墙获取非安全页面上当前登录的用户 的相关文章

随机推荐