Symfony2 中的防火墙有问题。
我的 security.yml 文件中有这些
- { path: ^/, role: ROLE_USER }
- { path: ^/admin, role: ROLE_ADMIN }
- { path: ^/users, role: ROLE_ADMIN }
在我的菜单构建器中,我使用 isGranted 并且效果很好,如果我使用我的 ROLE_USER 用户登录,则菜单不会构建管理菜单。
但是,如果我在浏览器中手动键入 /admin,我会得到管理页面。(这发生在生产和开发环境中)
在开发环境的工具栏中,我可以看到用户没有 ROLE_ADMIN 角色
如果我根本不登录,我只会看到登录页面,所以一切都很好
完整的security.yml:https ://gist.github.com/lsv/2e9dce622fd82d31853c
完整的 config.yml:https ://gist.github.com/lsv/ec87592f911262af5417
我正在使用 FOSUserbundle