【问题标题】:Symfony access controlSymfony 访问控制
【发布时间】:2018-06-04 02:58:07
【问题描述】:

我只想授权访问我的 API 的一个 ip。但即使我从我的 security.yml 文件中将它写在 access_control 中,它似乎也不起作用。

access_control:
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin/, role: ROLE_ADMIN }
    - { path: ^/administration, role: ROLE_ADMIN}
    - { path: ^/api, role: IS_AUTHENTICATED_ANONYMOUSLY, ip: 527.0.2.1 }

我要阻塞的路由都在^/api/*之后

感谢您的帮助。

【问题讨论】:

  • 你有反向代理吗?
  • 如果你输入正确的IP地址,配置就可以工作
  • albert1 我没有使用任何代理,我尝试使用 178.12.77 ip 但对 Nico Hass 没有结果
  • 178.12.77 不是有效 IP,527.0.2.1 也不是

标签: symfony security access-control


【解决方案1】:

你可以试试这个

access_control:
    #
    - { path: ^/api, roles: IS_AUTHENTICATED_ANONYMOUSLY, ips: [127.0.0.1, ::1] }
    - { path: ^/api, roles: ROLE_NO_ACCESS }

用你的IP替换127.0.0.1

阅读官方文档Symfony Matching access_control By IP

【讨论】:

    猜你喜欢
    • 2018-02-05
    • 1970-01-01
    • 2017-11-10
    • 2021-09-23
    • 1970-01-01
    • 2020-02-16
    • 2017-06-27
    • 1970-01-01
    • 2018-12-09
    相关资源
    最近更新 更多