【问题标题】:Redirect to a url when not authorised未授权时重定向到 url
【发布时间】:2025-11-23 03:25:01
【问题描述】:

我在Symfony 2.1 中遇到了安全问题。

我有防火墙设置:

firewall:

    main:
        pattern: ^/
        anonymous: ~
        query_string: ~
        access_denied_url: /register

    access_control:
    - { path: ^/, roles: ROLE_USER }
    - { path: ^/register, roles: IS_AUTHENTICATED_ANONYMOUSLY }

我希望这会将用户重定向到 /register 页面,但任何安全路由仍然告诉我 Full authentication is required to access this resource.

有人可以在这里指导我采用正确的解决方案吗?

【问题讨论】:

    标签: php symfony authorization symfony-2.1


    【解决方案1】:

    我正在这样做,但没有使用access_denied_url。我认为这就是为什么您会收到严厉的拒绝页面。

    使用form_login - 未经身份验证的用户将被定向到您的/login 路由。您可以在那里呈现或链接到注册表单,或将form_login: login_path 更改为/register

    http://symfony.com/doc/2.0/cookbook/security/form_login.html

    【讨论】: