gpt4 book ai didi

Symfony IP 访问控制配置不起作用

转载 作者:行者123 更新时间:2023-12-02 06:32:14 24 4
gpt4 key购买 nike

我们需要通过 IP 限制我们的部分应用程序,即使正在进行其他身份验证。腰带和背带。

Symfony 文档说这应该有效...

- { path: ^/api/whatever, role: [ROLE_WHATEVER_API], ips: [ 1.2.3.4, 5.6.7.8 ] }

...但这似乎完全打破了访问控制,所有请求都通过了。

所以我们改用了一个表达式,它有效,但很丑陋,一旦我们有一个包含 5 个左右 IP 的列表,就会变得笨拙困惑...

- { path: ^/api/whatever, allow_if: "('1.2.3.4' == request.getClientIp() or '5.6.7.8' == request.getClientIp()) and has_role('ROLE_WHATEVER_API')" }

有人知道为什么文档建议的 nice clean 方法 ( http://symfony.com/doc/current/cookbook/security/access_control.html#matching-access-control-by-ip ) 不起作用吗?

最佳答案

您可能想再次阅读文档。访问控制中的 IP 有效,只是不像您的“allow_if”表达式那样有效。

如果你想要它限制非 1.2.3.4 和 5.6.7.8 的 IP,请执行以下操作:

- { path: ^/api/whatever, role: [ROLE_WHATEVER_API], ips: [ 1.2.3.4, 5.6.7.8 ] }
- { path: ^/api/whatever, role: [ROLE_NO_ACCESS] }

这涵盖了 here .

关于Symfony IP 访问控制配置不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31516786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com